Files
calvana/CLAUDE.md

26 lines
1.2 KiB
Markdown

# Pi vs CC — Extension Playground
## Infrastructure Access
**Always read `.claude/infra.md` at the start of every session** — it contains live credentials and connection details.
To set up: copy `.claude/infra.md.example``.claude/infra.md` and fill in real values.
**Team distribution**: share the real file via 1Password shared vault (or `age`-encrypted blob, never git).
Pi Coding Agent extension examples and experiments.
## Tooling
- **Package manager**: `bun` (not npm/yarn/pnpm)
- **Task runner**: `just` (see justfile)
- **Extensions run via**: `pi -e extensions/<name>.ts`
## Project Structure
- `extensions/` — Pi extension source files (.ts)
- `specs/` — Feature specifications
- `.pi/agents/` — Agent definitions for agent-team extension
- `.pi/agent-sessions/` — Ephemeral session files (gitignored)
## Conventions
- Extensions are standalone .ts files loaded by Pi's jiti runtime
- Available imports: `@mariozechner/pi-coding-agent`, `@mariozechner/pi-tui`, `@mariozechner/pi-ai`, `@sinclair/typebox`, plus any deps in package.json
- Register tools at the top level of the extension function (not inside event handlers)
- Use `isToolCallEventType()` for type-safe tool_call event narrowing