@autocode-cli/autocode
v0.1.5
Published
Filesystem-based ticket system with web dashboard
Downloads
2,072
Maintainers
Readme
AutoCode CLI
Filesystem-based ticket management system with web dashboard.
Live Demo | Interactive Kanban Demo
Screenshots
Landing Page

Dashboard

Ticket Modal

Architecture

Installation
npm install -g @autocode-cli/autocodeQuick Start
# Initialize project structure
autocode init
# Create a new ticket (with all options)
autocode new "Implement user authentication" "OAuth2 login with Google and GitHub" -p P1 -l "feature,auth" -a "Login button visible,OAuth flow works,Token stored" -s minor
# List all tickets
autocode list
# Show ticket details
autocode show AC-000001
# Move ticket to next column
autocode next AC-000001
# Start web dashboard
autocode serveCommands
| Command | Description |
|---------|-------------|
| init | Initialize autocode project structure |
| new <title> [description] [-p P0-P3] [-l labels] [-a criteria] [-s semver] | Create a new ticket |
| list | List all tickets |
| show <key> | Show ticket details |
| move <key> <column> | Move ticket to specific column |
| next <key> | Advance ticket to next column |
| comment <key> <text> | Add comment to ticket |
| serve | Start web dashboard |
Options
init
-d, --dir <path>- Root directory (default: autodoc)-l, --lang <lang>- Language (en/fr)
new
-p, --priority <P0-P3>- Set priority (default: P2)-l, --labels <labels>- Comma-separated labels-a, --acceptance <criteria>- Comma-separated acceptance criteria-s, --semver <type>- Semver type (major/minor/patch, default: patch)- Second argument
[description]- Optional description text
list
-c, --column <column>- Filter by column-p, --priority <priority>- Filter by priority-l, --label <label>- Filter by label--json- Output as JSON
show
--json- Output as JSON
move
-f, --force- Force move (skip validation)
comment
--source <source>- Comment source (user or claude, default: claude)
serve
-p, --port <port>- Server port (default: 3333)
Workflow Columns
The default workflow includes 15 columns following a TDD approach (test before AND after refactoring):
- Backlog - New tickets waiting to be prioritized
- Ready - Tickets ready to start
- In Progress - Currently being worked on
- Testing Playwright - Manual testing before refactoring
- Testing Cypress - E2E tests before refactoring
- Review Best Practices - Code review for best practices
- Review No Duplication - Check for code duplication
- Review Consistency - Consistency review
- Review Security - Security review
- Retest Playwright - Manual testing after refactoring
- Retest Cypress - E2E tests after refactoring
- Update Docs - Documentation updates
- Deploy Staging - Deployed to staging
- Validate Staging - Staging validation
- Done - Completed
Project Structure
autodoc/
├── .seq # Ticket sequence counter
├── 00_backlog/
│ ├── ACTION.fr.md # Column instructions (French, default)
│ ├── ACTION.en.md # Column instructions (English)
│ └── tickets/
│ └── AC-000001__ticket_title/
│ └── issue.md # Ticket content
├── 01_ready/
├── 02_in-progress/
├── 03_testing-playwright/
├── 04_testing-cypress/
├── 05_review-best-practices/
├── 06_review-no-duplication/
├── 07_review-consistency/
├── 08_review-security/
├── 09_retest-playwright/
├── 10_retest-cypress/
├── 11_update-docs/
├── 12_deploy-staging/
├── 13_validate-staging/
└── 14_done/Ticket Format
Tickets are stored as Markdown files with YAML front matter:
---
key: "AC-000001"
title: "Implement feature X"
status: "In Progress"
column_slug: "02_in-progress"
priority: "P1"
labels: ["feature", "backend"]
description: "..."
acceptance_criteria:
- "Criterion 1"
- "Criterion 2"
semver: "minor"
comments:
- text: "```markdown\nComment content\n```"
column: "In Progress"
created_at: "2024-01-15T10:00:00Z"
history:
- at: "2024-01-15T10:00:00Z"
action: "created"
from: null
to: "Backlog"
---
# Ticket Title
## Context
Additional context here...API Endpoints
When running autocode serve:
| Method | Endpoint | Description |
|--------|----------|-------------|
| GET | /api/tickets | List all tickets |
| GET | /api/tickets/:key | Get ticket details |
| POST | /api/tickets | Create new ticket |
| PATCH | /api/tickets/:key | Update ticket |
| POST | /api/tickets/:key/comments | Add comment |
| POST | /api/tickets/:key/move | Move to column |
| POST | /api/tickets/:key/next | Advance to next column |
| POST | /api/tickets/:key/archive | Archive ticket (move to Done) |
| GET | /api/tickets/:key/log | Get claude-code.log for ticket |
| GET | /api/tickets/:key/log/:columnSlug | Get column-specific log |
| GET | /api/tickets/:key/prompt/:columnSlug | Get Claude prompt for column |
| GET | /api/tickets/:key/attachments | List ticket attachments |
| POST | /api/tickets/:key/attachments | Upload attachment |
| DELETE | /api/tickets/:key/attachments/:filename | Delete attachment |
| GET | /api/columns | List all columns |
| GET | /api/columns/:slug/actions | Get column ACTION content |
| POST | /api/columns/:slug/actions | Update column ACTION content |
| GET | /api/summary | Get workflow summary |
Environment Variables
| Variable | Description | Default |
|----------|-------------|---------|
| AUTOCODE_ROOT | Root directory for tickets | autodoc |
| AUTOCODE_LANG | Language (en/fr) | fr |
| AUTOCODE_PORT | Dashboard port | 3333 |
| AUTOCODE_CLAUDE | Enable Claude integration | true |
| AUTOCODE_CLAUDE_TIMEOUT | Claude timeout (ms) | 900000 |
