Metadata-Version: 2.4
Name: pichu
Version: 0.1.2
Summary: ⚡ pichu — code, compile, conquer
Author: pichu Contributors
License-Expression: Apache-2.0
Requires-Python: >=3.11
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: beautifulsoup4>=4.12.3
Requires-Dist: click>=8.1.7
Requires-Dist: ddgs>=8.1.1
Requires-Dist: fastmcp>=2.12.0
Requires-Dist: html2text>=2024.2.26
Requires-Dist: httpx>=0.27.0
Requires-Dist: lxml>=5.0
Requires-Dist: openai>=1.52.0
Requires-Dist: pathspec>=0.11.0
Requires-Dist: platformdirs>=4.3.0
Requires-Dist: playwright>=1.50.0
Requires-Dist: pydantic>=2.9.0
Requires-Dist: pypdf>=5.3.0
Requires-Dist: prompt_toolkit>=3.0.50
Requires-Dist: python-dotenv>=1.0.1
Requires-Dist: pyyaml>=6.0.2
Requires-Dist: rich>=13.9.0
Requires-Dist: tenacity>=9.0.0
Requires-Dist: tiktoken>=0.9.0
Requires-Dist: tomlkit>=0.13.2
Provides-Extra: dev
Requires-Dist: build>=1.2.2.post1; extra == "dev"
Requires-Dist: mypy>=1.11.0; extra == "dev"
Requires-Dist: pre-commit>=3.7.0; extra == "dev"
Requires-Dist: pytest>=8.0.0; extra == "dev"
Requires-Dist: pytest-asyncio>=0.23.0; extra == "dev"
Requires-Dist: pytest-cov>=5.0.0; extra == "dev"
Requires-Dist: ruff>=0.5.0; extra == "dev"
Requires-Dist: twine>=5.1.1; extra == "dev"
Requires-Dist: types-pyyaml>=6.0.0; extra == "dev"
Dynamic: license-file

<p align="center">
  <img src="https://raw.githubusercontent.com/yeabwang/pichu/main/assets/logo.png" alt="pichu Logo" width="200">

  <h1 align="center">⚡ pichu</h1>

  <p align="center">
    <strong>Code, compile, conquer.</strong><br>
    Open-source coding agent that lives in your terminal.
  </p>

  <!-- Badges -->
  <p align="center">
    <img src="https://assets.piptrends.com/get-last-week-downloads-badge/pichu.svg">
    <img src="https://img.shields.io/pypi/v/pichu">
    <img src="https://img.shields.io/github/license/yeabwang/pichu">
    <img src="https://img.shields.io/github/stars/yeabwang/pichu?style=social">
  </p>

  <!-- Links -->
  <p align="center">
    <a href="https://github.com/yeabwang/pichu">Home</a> •
    <a href="https://github.com/yeabwang/pichu/stargazers">Star</a> •
    <a href="https://github.com/yeabwang/pichu/issues">Report Bug</a> •
    <a href="https://github.com/yeabwang/pichu/pulls">Submit PR</a> •
    <a href="https://pypi.org/project/pichu/">PyPI</a>
  </p>
</p>

---

<p align="center">
  <img src="https://raw.githubusercontent.com/yeabwang/pichu/main/assets/demo.gif" alt="pichu Demo" />
</p>

## Features

* **Composable tool stack** — files, shell, web, tasks, and memory in one agent
* **Sub-agents & task orchestration** — delegate, isolate, and coordinate complex workflows
* **MCP ecosystem integration** — connect external MCP servers as native tools
* **Context management** — token-aware compaction, pruning, and usage tracking
* **Session management** — persistent transcripts, resume, rewind, and fork sessions
* **Memory system** — global and project memory with structured retrieval
* **Hooks & automation** — lifecycle hooks for tool use, compaction, and agent control
* **Interactive terminal UX** — 29 slash commands for runtime control and diagnostics
* **Safety & reliability** — workspace trust prompt, sandboxing, approvals, retries, and audit logging

## Quick Start

Install pichu (recommended: one-line installer):
  - See [docs/install.md](docs/install.md)

```bash
# Start interactive mode
pichu

# Configure model/provider inside the session
/login

# Initialize project
/init

# Ask for a one-off task
pichu "explain this repo"
```

## Documentation

### Getting Started

- [Quick Install](docs/install.md)
- [Usage Guide](docs/usage.md)

### Development and Operations

- [Development Guide](docs/development.md)
- [Deployment Guide](docs/deployment.md)

### Module and Architecture References

- [Agent Module](docs/agent-module.md) — runtime loop, events, session lifecycle
- [Client Module](docs/client-module.md) — LLM client, streaming, retry
- [Commands Module](docs/commands-module.md) — slash command system
- [Config Module](docs/config-module.md) — configuration schema and loading
- [Context Module](docs/context-module.md) — context management and compaction
- [Hooks Module](docs/hooks-module.md) — lifecycle hook engine
- [Logging Module](docs/logging-module.md) — runtime and audit logging
- [MCP Module](docs/mcp-module.md) — MCP server integration
- [Safety Module](docs/safety-module.md) — approval and sandbox policies
- [Sub-agents Module](docs/subagents-module.md) — sub-agent orchestration
- [Task Management](docs/task-management.md) — task system architecture
- [Tool Management](docs/tool-management.md) — tool registry and execution
- [UI Module](docs/ui-module.md) — terminal UI architecture and rendering pipeline
- [Utils Module](docs/utils-module.md) — shared runtime utilities

## Support the Project

If you find this project useful:

- ⭐ Star it on GitHub to show support
- 🐛 Open issues to report bugs or suggest features
- 🔧 Submit a PR to improve the project
- 💡 Share it with others who might benefit

Contributions of any size are welcome.

## License

Apache 2.0 — see [LICENSE](LICENSE).
