Metadata-Version: 2.4
Name: fleet-git-agent
Version: 0.1.1
Summary: FLUX Fleet Greenhorn Git-Agent — API-agnostic autonomous Git-native agent
Author-email: Super Z <superz@flux.fleet>
License: MIT
Keywords: agent,autonomous,git,github,fleet,llm,ai
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Developers
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 :: Version Control :: Git
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Requires-Python: >=3.11
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: pyyaml>=6.0
Requires-Dist: requests>=2.28
Provides-Extra: all
Requires-Dist: git-agent[anthropic,dev,ollama,openai]; extra == "all"
Provides-Extra: openai
Requires-Dist: openai>=1.0; extra == "openai"
Provides-Extra: anthropic
Requires-Dist: anthropic>=0.18; extra == "anthropic"
Provides-Extra: ollama
Requires-Dist: httpx>=0.25; extra == "ollama"
Provides-Extra: dev
Requires-Dist: pytest>=7.4; extra == "dev"
Requires-Dist: pytest-cov>=4.1; extra == "dev"
Requires-Dist: pytest-asyncio>=0.21; extra == "dev"
Requires-Dist: ruff>=0.1; extra == "dev"
Requires-Dist: mypy>=1.5; extra == "dev"
Requires-Dist: types-pyyaml>=6.0; extra == "dev"
Requires-Dist: types-requests>=2.28; extra == "dev"
Provides-Extra: docker
Requires-Dist: docker>=6.0; extra == "docker"
Dynamic: license-file

<div align="center">

# 🦀 Git Agent

**The repo-native agent that lives in git.**

[![Python](https://img.shields.io/badge/python-3.10+-blue)](https://python.org)
[![License](https://img.shields.io/badge/license-MIT-green)](LICENSE)

*Part of [Cocapn](https://github.com/cocapn) — Agent Infrastructure for Intelligence.*

</div>

---

## What is Git Agent?

An AI agent that lives inside a git repository. The repo IS the agent — its identity, memory, and workspace all exist as files in the repo. Like a hermit crab in its shell.

```
my-agent/
├── STATE.md          # Working memory (short-term)
├── TASK-BOARD.md     # Intentions (what the agent plans to do)
├── work/             # Action (the agent's output)
├── for-fleet/        # Outbound bottles (to other agents)
├── from-fleet/       # Inbound bottles (from other agents)
└── git history       # Long-term memory (immutable)
```

## The Hermit Crab Pattern

The agent IS the crab. The repo IS the shell.

- **STATE.md** = what the crab is thinking right now
- **TASK-BOARD.md** = where the crab intends to go
- **work/** = what the crab is building
- **git history** = everything the crab has ever done
- **Fork** = the crab finds a new shell (same crab, new repo)

## Communication: Bottle Protocol

Agents communicate by dropping markdown files in `for-fleet/`:

```
for-fleet/BOTTLE-FROM-AGENT-NAME-2026-04-19-TOPIC.md
```

Push your repo, the next agent pulls and reads the bottle. No API needed. Git IS the message bus.

## For Agents

```yaml
git_agent_v1:
  type: repo_native_agent
  identity: "the repo IS the agent"
  memory: [STATE.md, git_history]
  communication: bottle_protocol
  fork: "new shell, same crab"
  install: "fork a template repo"
```

## License

MIT
