Code
How earendil-works/pi is laid out, and where to start for common changes.
There is no import map for this report yet.
Where to start reading
- Repository root
- Repository root
- Likely public API
- Likely public API
- Likely start-up file
- Likely start-up file
- Suggested starting pointAI
- Suggested starting pointAI
Find files for a task
AIAdd a new LLM provider
- Create a new provider file in packages/ai/src/providers/
- Implement the provider interface matching anthropic-messages.ts or bedrock-provider.ts patterns
- Register the provider in the all.ts registry
- Add authentication handling in packages/ai/src/auth/ if needed
Add a new tool or MCP integration
- Create a transport handler in packages/mcp/src/transports/ or auth provider in packages/mcp/src/auth-provider.ts
- Define tool protocol types using MCP types in packages/mcp/src/protocol/types.ts
- Register the tool in the agent session's tool-search or discoverable-tools index
- Test using MCP testing utilities in packages/mcp/src/testing/index.ts
Add a custom coding agent extension
- Create an extension module under packages/coding-agent/examples/extensions/ or as an external npm package
- Implement extension hooks (codemode execute, skills, prompt templates) using patterns from existing extensions
- Register the extension in the agent session services
Add telemetry or metrics collection
- Define metric schema in packages/telemetry/src/ following the metrics.ts pattern
- Emit metrics from agent loop or session using the telemetry index export
- Store metrics in SQLite via packages/chord/src/telemetry-sqlite/store.ts
- Verify with conformance tests in packages/telemetry/src/testing/conformance.ts
Change the public API
Trace runtime behavior
Add or update tests
Change build or automation
RepoPilot lists up to 500 files, so a file missing here may still exist.
- Files marked “likely” are guessed from their names.