Metadata-Version: 2.4
Name: spec-kitty-cli
Version: 3.2.0rc44
Summary: Spec Kitty, a tool for Specification Driven Development (SDD) agentic projects, with kanban and git worktree isolation.
Project-URL: Repository, https://github.com/Priivacy-ai/spec-kitty
Project-URL: Issues, https://github.com/Priivacy-ai/spec-kitty/issues
Project-URL: Documentation, https://docs.spec-kitty.ai/
Project-URL: Changelog, https://github.com/Priivacy-ai/spec-kitty/blob/main/CHANGELOG.md
Author: Spec Kitty Contributors
Maintainer: Spec Kitty Contributors
License: MIT License
        
        Copyright GitHub, Inc.
        
        Permission is hereby granted, free of charge, to any person obtaining a copy
        of this software and associated documentation files (the "Software"), to deal
        in the Software without restriction, including without limitation the rights
        to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
        copies of the Software, and to permit persons to whom the Software is
        furnished to do so, subject to the following conditions:
        
        The above copyright notice and this permission notice shall be included in all
        copies or substantial portions of the Software.
        
        THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
        IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
        FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
        AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
        LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
        OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
        SOFTWARE.
License-File: LICENSE
Keywords: agentic-development,ai-agents,ai-coding,claude-code,cli,code-generation,feature-specs,git-worktree,kanban,llm-tools,planning,requirements,sdd,spec-driven-development,specification,workflow-automation
Classifier: Development Status :: 4 - Beta
Classifier: Environment :: Console
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Topic :: Software Development
Classifier: Topic :: Software Development :: Code Generators
Classifier: Topic :: Software Development :: Documentation
Classifier: Topic :: Software Development :: Quality Assurance
Classifier: Topic :: Software Development :: Version Control
Classifier: Topic :: Software Development :: Version Control :: Git
Classifier: Topic :: Utilities
Classifier: Typing :: Typed
Requires-Python: >=3.11
Requires-Dist: charset-normalizer<4,>=3.4
Requires-Dist: click>=8.2.1
Requires-Dist: cryptography>=42.0
Requires-Dist: filelock>=3.13.0
Requires-Dist: google-re2>=1.1
Requires-Dist: httpx[socks]>=0.28.1
Requires-Dist: jsonschema>=4.0
Requires-Dist: packaging>=23.0
Requires-Dist: platformdirs>=4.9.2
Requires-Dist: psutil>=5.9.0
Requires-Dist: pydantic>=2.0
Requires-Dist: pygments>=2.20.0
Requires-Dist: python-ulid>=3.0
Requires-Dist: pyyaml>=6.0
Requires-Dist: readchar>=4.2.1
Requires-Dist: requests>=2.33.0
Requires-Dist: rich>=14.3.3
Requires-Dist: ruamel-yaml>=0.18.0
Requires-Dist: spec-kitty-events<7.0.0,>=6.0.0
Requires-Dist: spec-kitty-tracker<0.5,>=0.4
Requires-Dist: toml>=0.10.2
Requires-Dist: transitions>=0.9.2
Requires-Dist: truststore>=0.10.4
Requires-Dist: typer>=0.24.1
Requires-Dist: websockets>=12.0
Provides-Extra: lint
Requires-Dist: bandit>=1.7.0; extra == 'lint'
Requires-Dist: cyclonedx-bom>=4.0; extra == 'lint'
Requires-Dist: mypy>=1.10.0; extra == 'lint'
Requires-Dist: pip-audit>=2.7.0; extra == 'lint'
Requires-Dist: ruff>=0.4.0; extra == 'lint'
Requires-Dist: types-jsonschema>=4.0.0; extra == 'lint'
Requires-Dist: types-psutil>=5.9.0; extra == 'lint'
Requires-Dist: types-pyyaml>=6.0; extra == 'lint'
Requires-Dist: types-requests>=2.33.0; extra == 'lint'
Requires-Dist: types-toml>=0.10.0; extra == 'lint'
Provides-Extra: test
Requires-Dist: build>=1.0.0; extra == 'test'
Requires-Dist: chardet<6,>=3.0.4; extra == 'test'
Requires-Dist: diff-cover>=10.0.0; extra == 'test'
Requires-Dist: mutmut>=3.5.0; extra == 'test'
Requires-Dist: pytest-asyncio>=0.21.0; extra == 'test'
Requires-Dist: pytest-cov>=4.1.0; extra == 'test'
Requires-Dist: pytest-timeout>=2.2.0; extra == 'test'
Requires-Dist: pytest-xdist>=3.8.0; extra == 'test'
Requires-Dist: pytest>=9.0.3; extra == 'test'
Requires-Dist: pytestarch>=4.0.0; extra == 'test'
Requires-Dist: respx>=0.21.1; extra == 'test'
Description-Content-Type: text/markdown

<div align="center">
    <img src="https://github.com/Priivacy-ai/spec-kitty/raw/main/media/logo_small.webp" alt="Spec Kitty logo"/>
    <h1>Spec Kitty</h1>
    <p><strong>Spec-driven development for AI coding agents, multi-agent workflows, and governed software factories.</strong></p>
</div>

Spec Kitty is an open-source CLI for turning product intent into a repo-native AI coding workflow:

```text
spec -> plan -> tasks -> next -> review -> accept -> merge
```

Use it to build a governed software factory around Claude Code, Codex, Cursor, Gemini, GitHub Copilot, Windsurf, OpenCode, and other AI coding agents. Spec Kitty keeps specs, plans, work packages, acceptance criteria, review state, and merge decisions in your repository, then gives agents isolated git worktrees so implementation can happen in parallel without branch chaos.

[![PyPI version](https://img.shields.io/pypi/v/spec-kitty-cli?style=flat-square&logo=pypi)](https://pypi.org/project/spec-kitty-cli/)
[![License: MIT](https://img.shields.io/badge/license-MIT-yellow?style=flat-square)](LICENSE)
[![Python 3.11+](https://img.shields.io/badge/python-3.11+-blue?style=flat-square)](https://www.python.org/downloads/)

## Bright Software Factory, Not a Black Box

Spec Kitty is for teams building software factories: repeatable inputs, clear work-package boundaries, isolated execution, visible progress, and review gates. It can support dark software factories and autonomous coding experiments, but it is deliberately not a lights-out black box by default. Humans define intent, architecture, and acceptance criteria; agents implement inside traceable worktrees; reviewers accept, reject, or merge with an audit trail.

The goal is not more prompt text. The goal is a durable operating system for agentic coding where the repository remains the source of truth.

## Is It For You?

Use Spec Kitty when:

- AI coding sessions are losing requirements, decisions, or acceptance criteria.
- You want specs, plans, tasks, reviews, and merge state stored in Git.
- Multiple agents or developers need clear work-package boundaries.
- You are running parallel Claude Code, Codex, Cursor, Copilot, Gemini, or Windsurf work and need git worktree isolation.
- You are moving from vibe coding to a repeatable spec-driven development workflow.
- You want a local workflow first, with optional hosted tracker and sync integrations later.

It is probably overkill for one-off edits, tiny scripts, or teams that do not use Git.

## What It Provides

| Need | Spec Kitty provides |
| --- | --- |
| Start from intent | Guided `specify`, `plan`, and `tasks` workflows |
| Keep agents aligned | Repository-native mission artifacts under `kitty-specs/` |
| Split implementation | Work packages with lifecycle lanes such as `planned`, `in_progress`, `for_review`, `approved`, and `done` |
| Run agents in parallel | Isolated git worktrees under `.worktrees/` |
| Keep quality visible | Review, accept, merge, and retrospective gates |
| See progress | Optional local kanban dashboard with `spec-kitty dashboard` |
| Integrate agents | Slash commands or skills for Claude Code, Codex, Cursor, Gemini, Copilot, Windsurf, OpenCode, and more |
| Learn from missions | Every completed mission generates a retrospective by default. Tune via `.kittify/config.yaml#retrospective` or charter; see [how-to](docs/how-to/use-retrospective-learning.md). |

## Common Use Cases

- Replace ad hoc vibe coding with spec-driven development.
- Turn GitHub issues, product requirements, or bug reports into executable work packages.
- Coordinate multiple AI coding agents without losing context between sessions.
- Keep architecture decisions, constraints, and acceptance criteria close to the code.
- Build a governed software factory that can scale toward more autonomy without hiding review, test, or merge decisions.

## Governance layer

Spec Kitty keeps runtime governance in the repo instead of treating it as
agent-only prompt text. The trail model in [docs/trail-model.md](docs/trail-model.md)
describes how `spec-kitty advise`, `spec-kitty ask`, and `spec-kitty do` map
operator intent to runtime behavior, while
[docs/host-surface-parity.md](docs/host-surface-parity.md) tracks parity across
CLI, slash-command, and hosted surfaces.

Three primary commands drive this layer:

- `spec-kitty advise` - surfaces relevant doctrine, guidelines, and warnings for the current context
- `spec-kitty ask` - queries the knowledge base for specific guidance
- `spec-kitty do` - executes governed actions, ensuring compliance with the trail model

## Quick Start

Install the CLI:

```bash
pipx install spec-kitty-cli
```

`pipx` is the preferred installer for the CLI because it keeps Spec Kitty in its
own virtual environment and avoids the `externally-managed-environment` errors
common on modern Linux distributions.

Other supported install methods:

```bash
uv tool install spec-kitty-cli
# or, inside an activated virtual environment
python -m pip install spec-kitty-cli
```

Create or initialize a project:

```bash
spec-kitty init my-project --ai claude
cd my-project
spec-kitty verify-setup
```

Replace `claude` with your agent key when needed. Common choices include `codex`, `cursor`, `gemini`, `copilot`, `opencode`, `qwen`, `windsurf`, `kiro`, `vibe`, `pi`, and `letta`. See [Supported Agents](docs/reference/supported-agents.md) for the current list.

Open your AI coding agent in the project and run the core workflow:

```text
/spec-kitty.charter
/spec-kitty.specify Build a small task list app.
/spec-kitty.plan
/spec-kitty.tasks
```

Then let the runtime choose the next action until the mission is ready:

```bash
spec-kitty next --agent claude --mission <mission-slug>
```

Review, accept, merge, and close the loop:

```text
/spec-kitty.review
/spec-kitty.accept
/spec-kitty.merge --push
```

After merge, run `/spec-kitty-mission-review`. The mission's
`retrospective.yaml` is authored during the runtime terminus (HiC prompt or
autonomous facilitator), not by `merge`. Once it exists, use
`spec-kitty retrospect summary` for the cross-mission view and
`spec-kitty agent retrospect synthesize --mission <mission-slug>` to apply any
staged proposals (dry-run by default — pass `--apply` to mutate).

For the full walkthrough, see [Your First Feature](docs/tutorials/your-first-feature.md).

## Everyday Commands

| Command | Purpose |
| --- | --- |
| `spec-kitty init . --ai <agent>` | Add Spec Kitty to the current repo |
| `spec-kitty verify-setup` | Check local installation and project wiring |
| `spec-kitty dashboard` | Open the local mission dashboard |
| `spec-kitty next --agent <agent> --mission <slug>` | Ask Spec Kitty what the agent should do next |
| `spec-kitty upgrade` | Update an existing project after upgrading the CLI |
| `spec-kitty --help` | Show available commands |

## Documentation

Start here:

- [Getting Started](docs/tutorials/getting-started.md)
- [Your First Feature](docs/tutorials/your-first-feature.md)
- [Orchestrator Quickstart](docs/tutorials/orchestrator-quickstart.md)
- [CLI Command Reference](docs/reference/cli-commands.md)
- [Slash Commands](docs/reference/slash-commands.md)
- [Supported Agents](docs/reference/supported-agents.md)
- [Dashboard Guide](docs/how-to/use-dashboard.md)
- [Install and Upgrade](docs/how-to/install-and-upgrade.md)

Deeper topics:

- [Spec-Driven Development](docs/explanation/spec-driven-development.md)
- [Mission System](docs/explanation/mission-system.md)
- [Git Worktrees](docs/explanation/git-worktrees.md)
- [Multi-Agent Orchestration](docs/explanation/multi-agent-orchestration.md)
- [External Orchestrator Runbook](docs/how-to/run-external-orchestrator.md)
- [Hosted Sync Workspaces](docs/how-to/sync-workspaces.md)

Hosted auth, sync, and tracker flows remain opt-in. For setup details, see
[Hosted Sync Workspaces](docs/how-to/sync-workspaces.md), [Internal
Hosted-Readiness](docs/how-to/internal-hosted-readiness.md), and
[Launch-Readiness Behavior](docs/explanation/launch-readiness-future.md).

## FAQ

### Is Spec Kitty for dark software factories?

Spec Kitty can be used as part of a dark software factory or autonomous coding pipeline, but its default model is governed and human-in-loop. It keeps specs, work packages, agent actions, review decisions, and merge state visible in the repository.

### Which AI coding agents does Spec Kitty support?

Spec Kitty supports common AI coding agents and coding harnesses including Claude Code, Codex, Cursor, Gemini, GitHub Copilot, OpenCode, Qwen, Windsurf, Kiro, Vibe, Pi, and Letta. See [Supported Agents](docs/reference/supported-agents.md).

### How is Spec Kitty different from prompt templates or Spec Kit?

Spec Kitty is inspired by spec-driven development workflows, but adds repo-native mission state, work-package lanes, git worktree isolation, a local dashboard, governance commands, and an explicit `next -> review -> accept -> merge` runtime loop.

### Does Spec Kitty require a SaaS service?

No. Spec Kitty is local-first and stores its core artifacts in your repo. Hosted tracker and sync integrations are optional.

## Development

```bash
git clone https://github.com/Priivacy-ai/spec-kitty.git
cd spec-kitty
pip install -e ".[test]"
```

When testing templates from a source checkout:

```bash
export SPEC_KITTY_TEMPLATE_ROOT="$(pwd)"
spec-kitty init my-project --ai claude
```

See [CONTRIBUTING.md](CONTRIBUTING.md) for contribution guidelines.

## Identity-Boundary CI Gate

The `drift-detector` required check protects the shared identity-boundary
contract across Spec Kitty repos. Contributor and admin details live in
[Identity-Boundary CI Gate](docs/development/identity-boundary-ci-gate.md).

## Support

- Open a [GitHub issue](https://github.com/Priivacy-ai/spec-kitty/issues/new) for bugs, feature requests, or questions.
- See [CHANGELOG.md](CHANGELOG.md) for release notes.
- See [CONTRIBUTORS.md](CONTRIBUTORS.md) and the [GitHub contributors graph](https://github.com/Priivacy-ai/spec-kitty/graphs/contributors) for contributor credits.

## License

Spec Kitty is released under the [MIT License](LICENSE).
