APMSign in

>Agent Skill

@enzannometsuke/auto-coder

skilldevelopment

Autonomous multi-session feature development framework. Use when the user wants to systematically implement features from a specification, track progress across sessions, and ensure all tests pass before marking features complete. Activated by the /lynyx-agent-kit:auto-coder command or when working with feature_list.json files in an .auto-coder directory.

apm::install
$apm install @enzannometsuke/auto-coder
apm::skill.md
---
description: >
  Autonomous multi-session feature development framework. Use when the user wants to
  systematically implement features from a specification, track progress across sessions,
  and ensure all tests pass before marking features complete. Activated by the /lynyx-agent-kit:auto-coder
  command or when working with feature_list.json files in an .auto-coder directory.
---

# Auto-Coder Skill

A framework for orchestrating autonomous feature development across multiple Claude Code sessions.

## Overview

Auto-coder operates in two phases:

1. **Initializer Phase** (Session 1): Analyzes a project specification and generates a comprehensive `feature_list.json` with test cases ordered by priority and dependency
2. **Coding Phase** (Sessions 2+): Implements features one-by-one, running tests, making git commits, and tracking progress until all features are complete

## State Files

All auto-coder state is persisted in the `.auto-coder/` directory:

| File | Purpose |
|------|---------|
| `feature_list.json` | Source of truth for features, test cases, and completion status |
| `progress.md` | Human-readable log of session activity |

See [FEATURE_SCHEMA.md](FEATURE_SCHEMA.md) for the complete JSON schema.

## Locating Skill Files

To quickly locate the auto-coder skill instruction files (CODER.md, INITIALIZER.md, etc.), use the `skill-file-locator.py` script:

```bash
python ~/.claude/plugins/cache/lynyx-claude/lynyx-agent-kit/<version>/skills/auto-coder/scripts/skill-file-locator.py
```

The script outputs the full path to the skill directory and a tree view of all skill files:

```
~/.claude/plugins/cache/lynyx-claude/lynyx-agent-kit/1.2.1/skills/auto-coder
├── scripts
│   ├── continue.sh
│   └── skill-file-locator.py
├── CODER.md
├── FEATURE_SCHEMA.md
├── INITIALIZER.md
└── SKILL.md
```

**Usage:**

- Default skill: `python skill-file-locator.py` (locates auto-coder skill)
- Custom skill: `python skill-file-locator.py <skill-name>`

Use this script at the start of each coding session to locate and read the appropriate instruction files (CODER.md for coding phase, INITIALIZER.md for initialization phase).

## Phases

### Phase 1: Initialization

Run with `/lynyx-agent-kit:auto-coder init [spec_file]`

For detailed instructions, see [INITIALIZER.md](INITIALIZER.md).

**Summary:**

- Read and analyze the project specification
- Generate `feature_list.json` with features ordered by critical path
- Auto-generate project prefix for task IDs (present to user for approval)
- Initialize project structure and git repository
- Create initial commit
- Rename session: `auto-coder: initialize {PROJECT_NAME}`

### Phase 2: Coding

Run with `/lynyx-agent-kit:auto-coder code`

For detailed instructions, see [CODER.md](CODER.md).

**Summary:**

- Orient to project state (read files, git log)
- Run regression tests on high-priority passing features
- Select next incomplete feature
- Implement and test the feature
- Update `feature_list.json` and commit
- Rename session: `auto-coder: {PROJECT_NAME} | {TASK_ID}`

## Session Management

### Fresh Sessions vs Resume

- **Fresh sessions**: Recommended for starting work on each new feature
- **Resume sessions**: Use `claude --resume <name>` for interrupted work mid-feature

### Session Naming

Sessions are automatically named for easy identification:
- Initializer: `auto-coder: initialize {PROJECT_NAME}`
- Coder: `auto-coder: {PROJECT_NAME} | {TASK_ID}`

### Pause/Resume

1. **To pause**: Exit session with Ctrl+C or Ctrl+D (context preserved)
2. **To resume**: `claude --resume "auto-coder: {PROJECT_NAME} | {TASK_ID}"`
3. **To start fresh**: `claude -p "/lynyx-agent-kit:auto-coder code"` (new session)

## Auto-Continuation

For fully autonomous operation, use a shell loop:

```bash
while true; do claude -p "/lynyx-agent-kit:auto-coder code" || break; sleep 3; done
```

Or use the helper script:

```bash
./plugins/lynyx-agent-kit/skills/auto-coder/scripts/continue.sh
```

## Security Guidance

The following commands are recommended for use during implementation:

**Allowed:**

- File operations: `ls`, `cat`, `head`, `tail`, `wc`, `grep`
- Runtime: `npm`, `node`, `bun`, `python`, `pytest`
- Version control: `git`
- Process management: `ps`, `lsof`, `sleep`, `pkill` (dev processes only)

**Avoid:**

- System modification commands
- Network commands without clear purpose
- Commands affecting files outside the project directory