Skip to content
v1.0.12MIT

AFK CLI workflow skills for requirements, implementation, research, QA, and hand-off.

AFK

AFK = Away From Keyboard — Autonomous development workflow CLI + Skills system

Cross-platform issue tracking automation (GitLab/GitHub) powered by Claude AI agents and TypeScript.

中文说明

Architecture

AFK Architecture

Features

  • Cross-platform — Unified GitLab and GitHub CLI (issues, MRs/PRs)
  • Skills Suite — 24 Claude Code skills covering the full development lifecycle
  • TUI Dashboard — Interactive issue tracking dashboard
  • Background Automation — tmux-based workflow scheduler
  • TDD Integration — Built-in test-driven development methodology

Quick Start

git clone https://github.com/easyhaloo/afk.git
cd afk
pnpm install && pnpm build
pnpm --dir apps/cli link --global
afk --version

See Getting Started Guide for detailed setup.

Install Claude Code Plugin (Optional)

AFK provides a full Claude Code skill suite that can be integrated as a plugin.

Method 1: In Claude Code Session (Recommended)

Use the slash command directly in Claude Code:

/plugin install afk@afk

Method 2: Using CLI

# Add marketplace
claude plugin marketplace add easyhaloo/afk --scope user

# Install plugin
claude plugin install afk@afk

Method 3: settings.json Configuration

Add to Claude Code's settings.json (global or project-level .claude/settings.json):

{
  "extraKnownMarketplaces": {
    "afk": {
      "source": {
        "source": "github",
        "repo": "easyhaloo/afk"
      }
    }
  }
}

Supported source types:

  • "github" — Load from GitHub repository
  • "local" — Load from local filesystem

Method 4: Symlink Skills

Link the skills/ directory to the global skills directory:

mkdir -p ~/.claude/skills
ln -s /path/to/afk/skills/* ~/.claude/skills/

Verify Installation

Run /afk-grill-me in Claude Code to confirm skills are loaded.

CLI Commands

# Backlog Management
afk backlog show --id <id>
afk backlog list --state ready --mode afk
afk backlog create "Title" --description-file ./description.md --tag feature
afk backlog tag add --id <id> --tag bug
afk backlog tag remove --id <id> --tag bug

# Execution & Automation
afk                                  # Interactive TUI panel
afk kanban                           # Kanban board
afk execute --work-item-id github:owner/repo#123 --execution-manifest <path>  # Managed work item: implement → QA → PR
afk observe executions --work-item-id github:owner/repo#123 --json
afk run --backlog-id <id>            # Lower-level implementation-only entry
afk run --backlog-id <id> --project <repo>
afk qa --backlog-id <id>             # Standalone QA
afk loop start --daemon --backlog-id <id> --work-item-id github:owner/repo#123 --execution-manifest <path>

# Infrastructure
afk tmux create-session --name <name> --dir <path>
afk isolate up

# Debug
afk debug reproduce <cmd>

# Signal Management
afk signal goal-complete --summary "<summary>"

Full command reference: afk --help

Skills (Claude Code)

SkillPurposeWhen to Use
/afk-grill-meRequirements interviewAmbiguous requirements or likely gaps
/afk-grill-me-contextGap-fill interviewExisting drafts/docs need verification
/afk-to-prdGenerate PRDAfter requirements alignment
/afk-to-issuesDecompose to issuesAfter PRD approved
/afk-doTask orchestrationClear feature or task description
/afk-researchTechnical researchNeed to understand existing implementation before coding
/afk-prototypeValidate approachNeed to validate tech approach before committing
/afk-implementTDD implementationClear implementation target
/afk-change-driven-testingChange-driven testingAdd focused regression tests for the business flow being changed
/afk-qaIndependent verificationMR/PR ready to merge
/afk-diagnoseQuick fixSpecific, reproducible failure
/afk-branch-migrateCross-branch migrationCherry-pick between divergent branches
/afk-hand-offWork handoffTransfer task to another developer
/afk-schedulerBackground schedulingMultiple issues with dependency-aware execution
/afk-skill-craftSkill authoringCreate, diagnose, or refactor skills
/api-workflowAPI testingMulti-step API chains with browser testing
/md-to-pdfMarkdown to PDFExport docs with Mermaid diagrams
/reasoning-guardReasoning guardMulti-turn reasoning degradation in coding agents
/reasoning-watchdogAuto reasoning monitorHooks-based automatic reasoning degradation interception
/afk-ai-prdAI-friendly PRDPRD that an AI can parse, decompose, and verify
/afk-llm-dev-guideLLM app design guideLLM application architecture and context engineering
/jev-agent-guardAgent checkpointsInstall Jev checkpoints across Claude Code, Codex, OpenCode
/software-complexity-governanceComplexity assessmentMeasure cyclomatic/cognitive complexity, coupling, debt
/wikiLocal knowledge managementSearch, read, ingest, and lint project knowledge

See Skills Guide for detailed documentation.

Architecture

AFK uses TrackerProvider interface to abstract GitLab and GitHub differences:

interface TrackerProvider {
  getIssue(id: number): Promise<TrackedIssue>;
  createMR(options: CreateMROptions): Promise<number>;
  mergeMR(id: number, options?: MergeMROptions): Promise<void>;
  // ... more operations
}

Platform auto-detected, no command switching needed. See Architecture Design and Execution Environment Design.

Workflows

Three core workflow patterns:

  1. Issue → Implementation → MR Pipeline — From issue discovery to merge request
  2. Scheduler Workflow — Background dependency-aware execution
  3. Skills Workflow — TDD methodology integration

See Workflow Documentation.

Development

pnpm install
pnpm build                         # Build shared packages and CLI
pnpm test                          # Test shared packages and CLI
pnpm --dir apps/desktop test        # Test Desktop
pnpm --dir apps/cli link --global   # Install CLI globally

Documentation

License

MIT