Evaluate: Extract standalone LLM interaction crate (Pi layered architecture pattern)
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 5/5
- Tiempo estimado
- Más de una semana
- Aptitud para principiantes
- 35/100
- Tipo de issue
- Refactorización
- Claridad
- Bastante claro
- Estado de actividad
- Estancado
- Stack tecnológico
- rust
- Área
- ai, backend-api-design
Línea de trabajo
Start by mapping LLM interaction points across the 54-crate workspace, including terraphim_orchestrator, terraphim_multi_agent, terraphim_llm_proxy, and cto-executive-system/automation/. Read the referenced Pi pi-ai package and compare existing model routing and agent configurations. Done means a proposed crate boundary, overlap assessment, and a documented extract, refactor, or reject decision with rationale.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Parent Epic
#682 -- Evaluate Pi architectural patterns
Pattern
Pi uses a 3-layer architecture where each layer is independently usable:
pi-ai (unified LLM API, multi-provider streaming, token/cost tracking)
|
pi-agent-core (stateful agent loop, tool execution, events, state management)
|
pi-coding-agent (TUI, sessions, extensions, skills, themes)
Any consumer can use pi-ai alone for LLM streaming, pi-agent-core for an agent without UI, or the full stack.
Current State
LLM interaction code in terraphim-ai is scattered across:
terraphim_orchestrator-- spawns CLI agents (subprocess management)terraphim_multi_agent-- agent configurations and model routingterraphim_llm_proxy-- HTTP proxy with model routing- Ad-hoc scripts in
cto-executive-system/automation/
There is no standalone crate for "call an LLM, get a response, track tokens/cost" that other crates can depend on without pulling in the full orchestrator or multi-agent machinery.
Evaluation Questions
- What belongs in a standalone LLM crate? Candidates: provider abstraction, streaming response types, token counting, cost calculation, context serialisation, model registry.
- Does this overlap with existing crates? Check
terraphim_llm_proxy(already has model routing) andterraphim_multi_agent(has agent configs). - Would this simplify ADF? Currently
terraphim_orchestratorshells out toclaude -pandcodex exec. A Rust-native LLM crate could replace some subprocess calls. - What about the Claude Agent SDK? The Agent SDK (#682 context) provides a Python/TypeScript library for Claude. A Rust LLM crate would serve a different purpose (direct API calls, multi-provider, no agent loop).
Acceptance Criteria
- Map all LLM interaction points across the 54-crate workspace
- Define proposed crate boundary (what goes in, what stays out)
- Assess overlap with terraphim_llm_proxy and terraphim_multi_agent
- Decision: extract, refactor existing, or reject with rationale
References
- Pi pi-ai package: https://github.com/badlogic/pi-mono/tree/main/packages/ai
- terraphim_llm_proxy: terraphim-ai/crates/terraphim_llm_proxy
- terraphim_multi_agent: terraphim-ai/crates/terraphim_multi_agent
- ADF orchestrator: terraphim-ai/crates/terraphim_orchestrator
- Lenguaje dominante
- Rust
- Estrellas
- 62
- Forks
- 5
- Merge medio
- 2 h 27 min
- PR fusionados (30 d)
- 1
Guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de terraphim/terraphim-ai
-
Dificultad 5/5 Más de una semana Aptitud para principiantes 25/100
terraphim/terraphim-ai#885 ·
-
Dificultad 4/5 3-5 días Aptitud para principiantes 55/100
terraphim/terraphim-ai#871 ·
-
enhancement
Dificultad 5/5 Más de una semana Aptitud para principiantes 25/100
terraphim/terraphim-ai#810 · 2 comentarios ·
-
enhancement
Dificultad 5/5 Más de una semana Aptitud para principiantes 35/100
terraphim/terraphim-ai#729 ·
-
enhancement
Dificultad 5/5 Más de una semana Aptitud para principiantes 35/100
terraphim/terraphim-ai#728 ·
Todos los issues de terraphim/terraphim-ai
Issues similares
-
Browser (wasm) relay client cannot connect to relays whose URL has a trailing-dot FQDN hostname Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
n0-computer/iroh#4550 ·
-
impl detach for native Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 65/100
paritytech/zombienet-sdk#591 ·
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
farion1231/cc-switch#7638 · 1 comentario ·
-
onnx-ir re-exports ModelProto and GraphProto but not NodeProto, AttributeProto and AttributeType Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100