Skip to content
/

ZCF — Zero-Config Code Flow

zcf · UfoMiao/zcf · ★ 6.0k · last commit 2026-05-23

Zero-config one-command setup for Claude Code + BMAD methodology + API relay provider configuration.

Best whenSetup friction for AI coding tools is the main barrier — one npx command should handle everything including API provider, MCP, and workflow installation.
Skip ifManual configuration of API endpoints, Verbose setup processes
vs seeds
bmad-methodseed (explicitly acknowledged) within a Zero-Config CLI that adds API relay provider setup (unique in this batch), bilin…
Primitive shape 55 total
Commands 47 Subagents 7 Hooks 1
00

Summary

ZCF — Zero-Config Code Flow

ZCF (Zero-Config Code Flow) is an npm/npx-published TypeScript CLI framework (v3.6.6, 6K stars) that provides one-command initialization for Claude Code and Codex with bilingual (English + Chinese) support, intelligent agent system, and BMAD-Method integration. The zcf CLI binary handles API provider configuration (supports 8+ relay providers: 302ai, CCR, pateway, etc.), MCP server setup, workflow installation, and language switching. Uniquely, ZCF ships the entire BMAD-Method command pack (40+ BMAD commands) as well as ZCF-specific commands, a custom BMAD TypeScript CLI architect as a subagent, an ESLint PostToolUse hook, and a .bmad-core directory for BMAD configuration. ZCF positions itself as a provider-neutral API relay configurator with BMAD methodology included.

differs_from_seeds: ZCF wraps BMAD-METHOD (ships .bmad-core/ + 40+ BMAD commands) within a Zero-Config CLI installer that also configures API relay providers. Unlike any seed, ZCF's primary value for many users is the zcf i -p 302ai -k "sk-xxx" one-liner for provider setup. The BMAD content is inherited from the BMAD-METHOD seed; ZCF's additive layer is the CLI, provider config, and bilingual UX.

01

Overview

Overview — ZCF (Zero-Config Code Flow)

Origin

Created by UfoMiao. Version 3.6.6 (May 2026). TypeScript monorepo with pnpm workspace. 6,009 stars, 420 forks. Multilingual: English, Chinese (simplified), Japanese. Sponsored by multiple API relay providers (Z.ai/GLM, PatewayAI, 302.AI, PackyCode, APIKEY.FUN, AICodeMirror, Crazyrouter).

Philosophy (verbatim from README)

"Zero-config, one-click setup for Claude Code & Codex with bilingual support, intelligent agent system and personalized AI assistant"

Quick Start (verbatim)

npx zcf           # interactive menu
npx zcf i         # Full initialization: install + workflows + API/CCR + MCP
npx zcf u         # Update workflows only
npx zcf --lang zh-CN  # Switch interface language

# Non-interactive (provider preset)
npx zcf i -s -p 302ai -k "sk-xxx"

Provider support

ZCF configures API relay providers (alternatives to direct Anthropic API):

  • 302ai
  • CCR (claude-code-router)
  • pateway
  • (5+ others based on sponsors)

Acknowledgments (verbatim)

"This project is inspired by and incorporates work from:

BMAD integration

ZCF ships .bmad-core/ and the full BMAD command set under .claude/commands/, treating BMAD as embedded content rather than a dependency.

02

Architecture

Architecture — ZCF

Distribution

npm package. Binary: zcf (bin/zcf.mjs). pnpm workspace monorepo.

Install

npx zcf i           # interactive
npx zcf i -s -p 302ai -k "sk-xxx"  # headless with provider
npm install -g zcf  # global

Required runtime

  • node>=18 (unbuild/TypeScript)
  • pnpm (for development)
  • Claude Code or Codex

CLI binary

zcf (bin/zcf.mjs)

Directory tree (after zcf i)

<project>/
├── .bmad-core/                   # BMAD method core files
├── .claude/
│   ├── commands/
│   │   ├── BMad/                 # BMAD agent subdirectory
│   │   ├── bmad-agent-*.md       # 10+ BMAD agents as commands
│   │   ├── bmad-bmm-*.md         # 20+ BMAD task commands
│   │   ├── bmad-*.md             # 8+ BMAD utility commands
│   │   ├── zcf-add-sponsor.md
│   │   ├── zcf-pr.md
│   │   ├── zcf-release.md
│   │   └── zcf-update-docs.md
│   ├── agents/
│   │   ├── typescript-cli-architect.md
│   │   ├── zcf-config-architect.md
│   │   ├── zcf-devops-engineer.md
│   │   ├── zcf-i18n-specialist.md
│   │   ├── zcf-template-engine.md
│   │   ├── zcf-testing-specialist.md
│   │   └── zcf-tools-integration-specialist.md
│   ├── hooks/
│   │   └── eslint-hook.ts
│   └── settings.json
├── .zcf/                         # ZCF config directory
└── src/
    ├── cli.ts
    ├── cli-setup.ts
    ├── commands/
    │   ├── ccr.ts
    │   ├── ccu.ts
    │   ├── check-updates.ts
    │   ├── config-switch.ts
    │   ├── init.ts
    │   ├── menu.ts
    │   ├── uninstall.ts
    │   └── update.ts
    └── ...

Target AI tools

Claude Code (primary), Codex (secondary).

Config files

  • .claude/settings.json
  • .zcf/ directory
  • .bmad-core/ (BMAD config)
03

Components

Components — ZCF

Commands (47 total)

BMAD-inherited commands (43)

Agent commands:

  • bmad-agent-bmad-master, bmad-agent-bmm-analyst, bmad-agent-bmm-architect, bmad-agent-bmm-dev, bmad-agent-bmm-pm, bmad-agent-bmm-qa, bmad-agent-bmm-quick-flow-solo-dev, bmad-agent-bmm-sm, bmad-agent-bmm-tech-writer, bmad-agent-bmm-ux-designer

Task commands: bmad-bmm-check-implementation-readiness, bmad-bmm-code-review, bmad-bmm-correct-course, bmad-bmm-create-architecture, bmad-bmm-create-epics-and-stories, bmad-bmm-create-prd, bmad-bmm-create-product-brief, bmad-bmm-create-story, bmad-bmm-create-ux-design, bmad-bmm-dev-story, bmad-bmm-document-project, bmad-bmm-domain-research, bmad-bmm-edit-prd, bmad-bmm-generate-project-context, bmad-bmm-market-research, bmad-bmm-qa-generate-e2e-tests, bmad-bmm-quick-dev, bmad-bmm-quick-spec, bmad-bmm-retrospective, bmad-bmm-sprint-planning, bmad-bmm-sprint-status, bmad-bmm-technical-research, bmad-bmm-validate-prd

Utility commands: bmad-brainstorming, bmad-editorial-review-prose, bmad-editorial-review-structure, bmad-help, bmad-index-docs, bmad-party-mode, bmad-review-adversarial-general, bmad-review-edge-case-hunter, bmad-shard-doc

ZCF-native commands (4)

  • zcf-add-sponsor, zcf-pr, zcf-release, zcf-update-docs

Subagents (7)

  • typescript-cli-architect
  • zcf-config-architect
  • zcf-devops-engineer
  • zcf-i18n-specialist
  • zcf-template-engine
  • zcf-testing-specialist
  • zcf-tools-integration-specialist

Skills

None (ZCF uses commands, not SKILL.md skills).

Hooks (1)

  • eslint-hook.ts — PostToolUse on Edit|MultiEdit|Write: runs ESLint on modified files

CLI subcommands (zcf)

  • zcf i / zcf init — Full initialization
  • zcf u / zcf update — Update workflows
  • zcf --lang zh-CN — Switch language
  • zcf ccr — Configure claude-code-router
  • zcf ccu — Run ccusage
  • zcf check-updates — Check for zcf updates
  • zcf config-switch — Switch config
  • zcf uninstall — Remove zcf

MCP servers

Configured by zcf i based on selection; exact servers unknown.

Templates

templates/ directory (content unknown from public data).

05

Prompts

Prompts — ZCF

Verbatim excerpt 1 — .claude/commands/bmad-agent-bmad-master.md

---
name: 'bmad-master'
description: 'bmad-master agent'
---

You must fully embody this agent's persona and follow all activation instructions exactly as specified. NEVER break character until given an exit command.

<agent-activation CRITICAL="TRUE">
1. LOAD the FULL agent file from {project-root}/_bmad/core/agents/bmad-master.md
2. READ its entire contents - this contains the complete agent persona, menu, and instructions
3. FOLLOW every step in the <activation> section precisely
4. DISPLAY the welcome/greeting as instructed
5. PRESENT the numbered menu
6. WAIT for user input before proceeding
</agent-activation>

Prompting technique: Deferred persona loading with XML activation tag. The command is intentionally thin — it delegates to the full agent file stored in _bmad/core/agents/. The <agent-activation CRITICAL="TRUE"> tag is a BMAD-specific pattern for signaling mandatory activation. "NEVER break character" is a persona lock instruction.

Verbatim excerpt 2 — .claude/settings.json (ESLint hook)

{
  "hooks": {
    "PostToolUse": [
      {
        "matcher": "Edit|MultiEdit|Write",
        "hooks": [
          {
            "type": "command",
            "command": "cd $(git rev-parse --show-toplevel) && pnpm tsx .claude/hooks/eslint-hook.ts"
          }
        ]
      }
    ]
  }
}

Prompting technique: Not a prompt — this is a runtime enforcement hook. The ESLint hook enforces code quality automatically on every file edit, without any Claude prompt required. This is behavioral enforcement via lifecycle hook rather than instruction.

09

Uniqueness

Uniqueness — ZCF

differs_from_seeds

ZCF is a BMAD-METHOD distributor wrapped in a Zero-Config CLI. The BMAD content (40+ commands, 10 agent personas, .bmad-core/) is acknowledged in the README as inherited from the BMAD-METHOD seed. ZCF's additive layer is: (1) one-command setup (npx zcf i), (2) API relay provider configuration (8+ providers), (3) bilingual UX (EN + ZH), (4) ccusage integration, and (5) ESLint auto-fix hook. The provider configuration story is the most distinctive aspect — no seed addresses the China-market API relay problem.

Positioning

"Zero-config setup for Claude Code + BMAD, with API relay for non-Anthropic endpoints." Primary audience appears to be Chinese developers who need API relay services (the extensive sponsor section with Chinese providers is a strong signal).

Observable failure modes

  • BMAD currency: ZCF embeds a snapshot of BMAD. If upstream BMAD-METHOD updates, ZCF's embedded version becomes stale.
  • Provider dependency: users relying on relay providers incur third-party latency, privacy, and availability risks.
  • Sponsor-driven feature prioritization: heavy sponsor integration in README (6 sponsors with referral links) may reflect commercial pressures on feature development.
  • Bilingual UX complexity: maintaining EN + ZH + JP README + i18n CLI adds significant maintenance overhead.

Cross-references

  • Explicitly acknowledges BMAD-METHOD, CCR, CCometixLine, ccusage
  • ZCC (this batch) is superficially similar in name but architecturally distinct
04

Workflow

Workflow — ZCF

Phases

Phase Description Artifact
Init npx zcf i .bmad-core/, .claude/, API config
API config Provider key input (302ai, CCR, etc.) ~/.claude/settings.json with proxy config
MCP setup Select and configure MCP servers .mcp.json
Workflow install Select workflow bundles .claude/commands/ populated
BMAD session Use BMAD agent commands PRD, architecture, user stories
Code Use BMAD dev/QA agents Implementation, tests
Release /zcf-pr, /zcf-release PR, release

BMAD sub-workflow (inherited)

  1. /bmad-agent-bmm-pm — product manager persona
  2. /bmad-bmm-create-prd — create PRD
  3. /bmad-agent-bmm-architect — architect persona
  4. /bmad-bmm-create-architecture — create architecture doc
  5. /bmad-agent-bmm-dev — developer persona
  6. /bmad-bmm-create-story/bmad-bmm-dev-story — implement stories
  7. /bmad-agent-bmm-qa — QA persona
  8. /bmad-bmm-qa-generate-e2e-tests — generate tests

Approval gates

None explicit beyond BMAD's check-implementation-readiness.

ESLint hook automation

On every Edit|MultiEdit|Write: pnpm tsx .claude/hooks/eslint-hook.ts runs ESLint, auto-fixing the modified files.

06

Memory Context

Memory & Context — ZCF

State storage

File-based. BMAD artifacts (PRD, architecture, stories) stored in _bmad/ within the project. ZCF config in .zcf/.

Persistence

Project-level (BMAD artifacts). Global API config in ~/.claude/settings.json.

Compaction handling

Not addressed by ZCF natively. BMAD's bmad-bmm-generate-project-context command generates a context summary useful after compaction.

Cross-session handoff

BMAD artifacts (PRD.md, architecture.md, stories) persist as the authoritative context for resumed sessions.

07

Orchestration

Orchestration — ZCF

Multi-agent

Yes. 7 ZCF-specific subagents + 10 BMAD agent personas = 17 total.

Orchestration pattern

Sequential (BMAD workflow: PM → Architect → Dev → QA).

Isolation mechanism

None.

Multi-model

The zcf i -p <provider> -k <key> flags configure an API relay (proxy) so users can route Claude Code to non-Anthropic endpoints. This is provider switching, not model-role mapping — all roles use the same configured model. Model-level routing (Haiku for tasks, Opus for planning) could be configured via --apiHaikuModel/--apiOpusModel flags.

Execution mode

One-shot per command invocation (BMAD agent switching is manual per session).

Consensus mechanism

None.

Prompt chaining

Yes. BMAD workflow chains: PRD → Architecture → Stories → Implementation, with each step referencing prior artifacts.

08

Ui Cli Surface

UI/CLI Surface — ZCF

Dedicated CLI binary

Yes. zcf (bin/zcf.mjs).

CLI subcommands

  • zcf i — Full initialization (interactive)
  • zcf i -s -p 302ai -k "key" — Non-interactive init
  • zcf u — Update workflows
  • zcf --lang zh-CN — Switch language
  • zcf ccr — Configure claude-code-router
  • zcf ccu — Run ccusage (token usage tracking)
  • zcf check-updates — Version check
  • zcf config-switch — Switch active config
  • zcf uninstall — Remove ZCF

Local web dashboard

None. ZCF has a Telegram community (t.me/ufomiao_zcf) for support.

IDE integration

Claude Code (primary). Codex configured via --codeType codex flag.

Observability

  • ccusage integration via zcf ccu — token usage tracking
  • zcf check-updates — version management

Documentation site

Full documentation at https://zcf.ufomiao.com/

Related frameworks

same archetype · same primary tool · same memory type

Claude-Flow / Ruflo ★ 55k

Eliminates single-agent context limits and sequential bottlenecks by orchestrating fault-tolerant swarms of specialized AI agents…

Hermes Agent (NousResearch) ★ 168k

Self-improving personal AI agent with closed learning loop, 7 terminal backends, and messaging gateway — not tied to any AI…

OpenCode ★ 165k

Terminal-first AI coding agent with multi-model routing, native desktop app, and a typed .opencode/ configuration system for…

OpenHands ★ 75k

Open-source AI software development platform (open-source Devin alternative) with Docker sandbox isolation, 77.6% SWE-bench…

DeerFlow ★ 70k

Long-horizon superagent that researches, codes, and creates by orchestrating parallel sub-agents with isolated contexts in Docker…

oh-my-openagent (omo) ★ 60k

Multi-provider AI agent orchestration for OpenCode: escape vendor lock-in by routing Sisyphus (Claude/Kimi/GLM) and Hephaestus…