Skip to content
Development
Skill

/lattice-init

Guided setup and upgrade-check experience for Lattice projects -- scans the repository, detects existing configuration and outdated conventions, suggests refiners and available upgrades in priority order, and creates or reconciles the .lattice/ config. Bridges the gap between

From plugin
lattice
19027 skills1 agent
Install
$ npx -y skills add techygarg/lattice --skill lattice-init --agent claude-code

How it fires

How this skill gets triggered: by you, by Claude, or both.

  • Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
  • You can call itInvoke it directly when you want it.
  • Slash command/lattice-init

Context preview

The summary Claude sees to decide when to auto-load this skill.

Guided setup and upgrade-check experience for Lattice projects -- scans the repository, detects existing configuration and outdated conventions, suggests refiners and available upgrades in priority order, and creates or reconciles the .lattice/ config. Bridges the gap between

SKILL.md

lattice-init.SKILL.md
name: lattice-init
description: "Guided setup and upgrade-check experience for Lattice projects -- scans the repository, detects existing configuration and outdated conventions, suggests refiners and available upgrades in priority order, and creates or reconciles the .lattice/ config. Bridges the gap between installing skills and getting first value, and between upgrading Lattice and adopting its newest conventions. Use when the user says 'lattice init', 'set up lattice', 'initialize lattice', 'get started with lattice', 'configure lattice for this project', 'check for lattice upgrades', or 'upgrade lattice conventions'."

Lattice Init

Required Skills

Read apply skills order:

1. `framework:knowledge-priming` -- Load project context understand what project is what already exists

Workflow

Step 1: Scan the Project

Detect signals about project understand shape existing Lattice state.

**Language/framework detection** -- check files in repo root:

  • `package.json` → Node.js / TypeScript
  • `tsconfig.json` → TypeScript (confirm over JavaScript)
  • `go.mod` → Go
  • `pom.xml` or `build.gradle` or `build.gradle.kts` → Java or Kotlin
  • `Cargo.toml` → Rust
  • `requirements.txt` or `pyproject.toml` or `setup.py` → Python
  • `Gemfile` → Ruby
  • `*.csproj` or `*.sln` → C# / .NET
  • `Package.swift` → Swift

<!-- synced with language-idioms-refiner "Detect the language" -- edit both -->

If multiple language markers are found in the repo root, note all of them and ask the user which is the primary stack before continuing.

**Directory structure** -- list top-level dirs. Identify common patterns:

  • `src/`, `lib/`, `app/` → source code
  • `test/`, `tests/`, `spec/` → test suites
  • `docs/` → documentation
  • `cmd/`, `internal/`, `pkg/` → Go project structure
  • `domain/`, `infrastructure/`, `application/` → layered architecture

**Existing `.lattice/` state** -- check what Lattice artifacts already exist:

  • `.lattice/config.yaml` → central config (check for `language` key)
  • `.lattice/standards/language-idioms.md` → language idioms refiner output
  • `.lattice/standards/knowledge-base.md` → knowledge priming output
  • `.lattice/standards/architecture.md` → architecture refiner output (clean architecture, hexagonal, modular monolith, or custom style)
  • `.lattice/standards/clean-code.md` → clean code refiner output
  • `.lattice/standards/ddd-principles.md` → DDD refiner output
  • `.lattice/standards/review-standards.md` → review refiner output
  • `.lattice/context/` → feature context documents (count them)
  • `.lattice/learnings/operational-learnings.md` → accumulated operational learnings (managed by learning-harvest atom)
  • `.lattice/reviews/review-log.md` → review log
  • `.lattice/requirements/index.md` → check shape: if epic sections and feature tables are written directly inside it (no `epics/` directory alongside) and `requirements_layout` is absent from config, flag as **legacy layout — upgrade available**
  • `.lattice/verification.yaml` → verification stages config consumed by the verification runner
  • `.lattice/scripts/run-verification.sh` → vendored verification runner

Step 2: Present Findings

Present:

## Project Scan Results

**Project**: [detected language/framework] at [repo root]
**Structure**: [key directories found]

### Lattice Setup Status

Running mode: **[customized -- standards docs active below / built-in defaults -- full functionality]**

- `.lattice/config.yaml`: [exists / not created yet]
- Language: [detected language / language key from config / not detected]
- Language idioms: [.lattice/standards/language-idioms.md / built-in default]
- Knowledge base: [.lattice/standards/knowledge-base.md / built-in default]
- Architecture standards: [.lattice/standards/architecture.md / built-in default]
- Clean code standards: [.lattice/standards/clean-code.md / built-in default]
- DDD standards: [.lattice/standards/ddd-principles.md / built-in default]
- Review standards: [.lattice/standards/review-standards.md / built-in default]
- Context documents: [N found / none]
- Review learnings: [found at .lattice/learnings/operational-learnings.md / none]
- Review log: [found at .lattice/reviews/review-log.md / none]
- Requirements layout: [sharded / legacy — upgrade available / not found]
- Verification suite: [.lattice/verification.yaml configured / not set up]

**STOP (fresh install): if no `.lattice/` state exists at all AND no legacy requirements layout was detected** — create the minimal `.lattice/config.yaml` shown in Step 3, tell the user: "Lattice is ready. It runs on built-in defaults with full functionality. Refiner interviews that pin your team's conventions are optional — ask for them anytime." Skip to Step 4. Do not present the customization menu unprompted.

**STOP: If `.lattice/config.yaml` and all core standards docs exist AND no legacy requirements layout was detected:** Tell user "Lattice fully configured." Skip to Step 4.

**STOP:** if a legacy requirements layout was detected, do not skip on that basis alone — present it as a gap in Step 3 even when everything else is fully configured.

Step 3: Guided Setup

Reached only when something needs attention (a gap above) or the user asked to customize. Frame every item below as optional refinement -- Lattice is fully functional without any of it.

**Priority order**:

1. **Requirements layout upgrade** (if legacy layout detected in Step 1) -- "Your requirements index uses an older layout that hand-edits one shared file per feature, which causes merge conflicts when multiple developers work in parallel. The current layout shards it by epic and generates rollups from feature files instead of hand-editing them. One-time migration; does not touch any feature file's content beyond a link repointing (a rare exception is surfaced and confirmed, never silent). This upgrade only matters if your team keeps requirements in this repo -- teams tracking requirements in an external system (Jira, Linear, etc.) can skip it." 2.

Read more
Ships withlattice

Composable AI skills that teach assistants structured thinking — design-first, context-aware, and architecture-guided.

Get the whole plugin
Stats
190
Stars
13
Forks
Active
Maintenance
JavaScript
Language
MIT
License
8d ago
Last commit
6mo ago
Created

Repo: techygarg/lattice

Other skills on lattice.