Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
20 changes: 20 additions & 0 deletions .llm/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
# LLM Workflow Documentation

Documentation for AI assistants working on this project.

## Structure

- **procedure/** - Reusable workflows
- **features/** - Completed: `done_F-{n}.md`, `done_ISSUE-{n}.md`
- **tasks/todo/** - Planned: `plan_F-{n}.md`, `plan_ISSUE-{n}.md`

## Workflows

Two separate workflows that never mix:

**F-n (Manual):** `plan_F-6.md` → `done_F-6.md`
**ISSUE-n (GitHub):** `plan_ISSUE-42.md` → `done_ISSUE-42.md`

- Numbers stay forever (F-6 never becomes F-5 or ISSUE-42)
- Gaps in numbering expected
- ISSUE-n imported via `procedure{source_github}` (label: `ready_for_dev`)
135 changes: 135 additions & 0 deletions .llm/bootstrap-llm-wow.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,135 @@
# Bootstrap: LLM Ways of Working

**Invocation:** `bootstrap ways of working from bootstrap-llm-wow.md`

## Creates

```
.llm/
├── README.md
├── bootstrap-llm-wow.md (self-copy)
├── procedure/import-tasks-github.md
├── features/ (empty)
└── tasks/todo/ (empty)
CLAUDE.md (root)
```

## Steps

### 1. Check Existing
`ls -la .llm/` → if exists, ask: Merge | Override | Cancel

### 2. Create Structure
```bash
mkdir -p .llm/{procedure,features,tasks/todo}
```

### 3. Create .llm/README.md
```markdown
# LLM Workflow Documentation

## Structure
- **procedure/** - Reusable workflows
- **features/** - Completed: `done_F-{n}.md`, `done_ISSUE-{n}.md`
- **tasks/todo/** - Planned: `plan_F-{n}.md`, `plan_ISSUE-{n}.md`

## Workflows
**F-n (Manual):** `plan_F-6.md` → `done_F-6.md`
**ISSUE-n (GitHub):** `plan_ISSUE-42.md` → `done_ISSUE-42.md`

Numbers stay forever. Gaps expected. ISSUE-n via `procedure{source_github}` (label: `ready_for_dev`).
```

### 4. Self-Replicate
Copy this file to `.llm/bootstrap-llm-wow.md`

### 5. Create .llm/procedure/import-tasks-github.md
```markdown
# Procedure: Import GitHub Issues as Tasks

**Invocation:** `procedure{source_github}`

## Steps
1. Get repo: `git remote get-url origin` → parse owner/name
2. Fetch: `gh issue list --label "ready_for_dev" --state open --json number,title,body,labels`
3. Create: `.llm/tasks/todo/plan_ISSUE-{n}.md` for each

## Template
# ISSUE-{n}: {Title}
**GitHub:** #{n} | {url}
**Created:** {date}
## Problem/Solution/Steps/Notes
{from issue or TBD}

## Rules
- `plan_ISSUE-42.md` → `done_ISSUE-42.md`
- Skip if exists
- ISSUE-n ≠ F-n
- Report: count, files, skipped
```

### 6. CLAUDE.md

**If missing:** Create with template below + `[PROJECT-SPECIFIC]` placeholders
**If exists:** Check for "Feature Documentation Process" → add if missing, preserve rest

```markdown
# CLAUDE.md

## Project Overview
[PROJECT-SPECIFIC]

## Feature Documentation Process

### Completed Features
1. Document in `.llm/features/done_F-{n}.md` (same n as plan)
2. Include: overview, files changed, tests, commits, migrations
3. Delete plan from `.llm/tasks/todo/`

### Planned Features
1. Create `.llm/tasks/todo/plan_F-{n}.md`
2. Include: problem, solution, steps, benefits, effort
3. Move to `done_F-{n}.md` when done (KEEP NUMBER)

**Plan mode:** Write to `.llm/tasks/todo/plan_F-{n}.md` (NOT `~/.claude/plans/`)

### Feature Numbering
- Numbers = plan date, not implement date
- `plan_F-6.md` → `done_F-6.md` (never renumber)
- Gaps expected

### GitHub Integration
- ISSUE-n: `plan_ISSUE-42.md` → `done_ISSUE-42.md`
- Invoke: `procedure{source_github}` (label: `ready_for_dev`)
- F-n ≠ ISSUE-n (never mix)

## LLM Procedures
See `.llm/procedure/` for workflows (e.g., `import-tasks-github.md`)

## [PROJECT-SPECIFIC SECTIONS]
[Add: Best Practices, Commands, Structure, Architecture, Patterns]
```

### 7. Optional .gitignore
Ask user to add:
```
# .claude/
# .agents/
```
(`.llm/` stays tracked)

### 8. Report
```
✅ Bootstrap Complete!

Created: .llm/{README,bootstrap,procedure/import-tasks-github,features/,tasks/todo/}
Updated: CLAUDE.md [new/merged]

Next:
- Customize CLAUDE.md
- Create plan_F-1.md or run procedure{source_github}
- Commit .llm/
```

## Replication
Copy this file to new repo → run invocation → done
File renamed without changes.
File renamed without changes.
42 changes: 42 additions & 0 deletions .llm/procedure/import-tasks-github.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
# Procedure: Import GitHub Issues as Tasks

**Invocation:** `procedure{source_github}`

## Steps

1. **Get repo info:** `git remote get-url origin` → parse owner/name
2. **Fetch issues:** `gh issue list --label "ready_for_dev" --state open --json number,title,body,labels`
3. **Create plans:** For each issue → `.llm/tasks/todo/plan_ISSUE-{n}.md`

## Plan Template

```markdown
# ISSUE-{n}: {Title}

**GitHub:** #{n} | https://github.com/{owner}/{repo}/issues/{n}
**Created:** {date}

## Problem
{from issue body or TBD}

## Solution
{from issue body or TBD}

## Steps
{from issue body or TBD}

## Notes
{additional context}
```

## Rules

- Naming: `plan_ISSUE-42.md` → `done_ISSUE-42.md`
- Skip if plan exists
- ISSUE-n separate from F-n (never mix)
- Report: count, titles, files created, skipped

## Edge Cases
- No `gh` CLI: provide install instructions
- Not authenticated: run `gh auth login`
- Empty issue body: use TBD placeholders
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
Loading