mirror of
https://github.com/getcompanion-ai/co-mono.git
synced 2026-04-15 08:03:39 +00:00
Composable agent runtime monorepo built on the pi ecosystem
Fix race condition where app_mention event fires before message event logs to log.jsonl, causing the user's triggering message to be missing from the agent's context. Now append the current message directly from ctx.message to recentMessages. |
||
|---|---|---|
| .husky | ||
| packages | ||
| scripts | ||
| .gitignore | ||
| .npmrc | ||
| AGENTS.md | ||
| biome.json | ||
| LICENSE | ||
| out.html | ||
| package-lock.json | ||
| package.json | ||
| pi-mono.code-workspace | ||
| README.md | ||
| tsconfig.base.json | ||
| tsconfig.json | ||
Pi Monorepo
Tools for building AI agents and managing LLM deployments.
Packages
| Package | Description |
|---|---|
| @mariozechner/pi-ai | Unified multi-provider LLM API (OpenAI, Anthropic, Google, etc.) |
| @mariozechner/pi-agent | Agent runtime with tool calling and state management |
| @mariozechner/pi-coding-agent | Interactive coding agent CLI |
| @mariozechner/pi-mom | Slack bot that delegates messages to the pi coding agent |
| @mariozechner/pi-tui | Terminal UI library with differential rendering |
| @mariozechner/pi-web-ui | Web components for AI chat interfaces |
| @mariozechner/pi-proxy | CORS proxy for browser-based LLM API calls |
| @mariozechner/pi | CLI for managing vLLM deployments on GPU pods |
Development
Setup
npm install # Install all dependencies
npm run build # Build all packages
npm run check # Lint, format, and type check
Development
Start watch builds for all packages:
npm run dev
Then run with tsx:
cd packages/coding-agent && npx tsx src/cli.ts
cd packages/pods && npx tsx src/cli.ts
Versioning (Lockstep)
All packages MUST always have the same version number. Use these commands to bump versions:
npm run version:patch # 0.7.5 -> 0.7.6
npm run version:minor # 0.7.5 -> 0.8.0
npm run version:major # 0.7.5 -> 1.0.0
These commands:
- Update all package versions to the same number
- Update inter-package dependency versions (e.g.,
pi-agentdepends onpi-ai@^0.7.7) - Update
package-lock.json
Never manually edit version numbers. The lockstep system ensures consistency across the monorepo.
Publishing
Complete release process:
-
Update CHANGELOG.md (if changes affect coding-agent):
# Add your changes to the [Unreleased] section in packages/coding-agent/CHANGELOG.md -
Bump version (all packages):
npm run version:patch # For bug fixes npm run version:minor # For new features npm run version:major # For breaking changes -
Update CHANGELOG.md version (if changes affect coding-agent):
# Move the [Unreleased] section to the new version number with today's date # e.g., ## [0.7.16] - 2025-11-17 -
Commit and tag:
git add . git commit -m "Release v0.7.16" git tag v0.7.16 git push origin main git push origin v0.7.16 -
Publish to npm:
npm run publish # Publish all packages to npm
License
MIT