a03675113a
- .claude/agents/fn-orquestador/SKILL.md - .claude/commands/fn_claude.md - .claude/rules/INDEX.md - .claude/rules/cpp_apps.md - .claude/rules/ids_naming.md - CHANGELOG.md - apps/dag_engine/README.md - apps/dag_engine/api.go - apps/dag_engine/dags_migrated/example.yaml - apps/dag_engine/dags_migrated/example_lineage_tracking.yaml - ... Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2.3 KiB
2.3 KiB
name, kind, lang, domain, version, purity, signature, description, tags, uses_functions, uses_types, returns, returns_optional, error_type, imports, params, output, tested, tests, test_file_path, file_path
| name | kind | lang | domain | version | purity | signature | description | tags | uses_functions | uses_types | returns | returns_optional | error_type | imports | params | output | tested | tests | test_file_path | file_path | |||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| claude_cli_prompt | function | py | infra | 1.0.0 | impure | def claude_cli_prompt(prompt: str, timeout_s: int = 60, model: str | None = None, max_chars_response: int = 200_000, extra_args: list[str] | None = None) -> str | Invoca `claude -p` via subprocess y devuelve la respuesta completa como string. Valida presencia del CLI, captura stderr en errores, y trunca respuestas largas. |
|
false | error_go_core |
|
|
Respuesta de Claude como texto plano (stdout del proceso). | false | python/functions/infra/claude_cli_prompt.py |
Ejemplo
from infra.claude_cli_prompt import claude_cli_prompt
# Pregunta simple
respuesta = claude_cli_prompt("Suma 2+2 y devuelve solo el numero")
print(respuesta) # "4"
# Con modelo especifico y timeout extendido
respuesta = claude_cli_prompt(
prompt="Resume este texto en 3 puntos: ...",
model="claude-opus-4-5",
timeout_s=120,
)
Cuando usarla
Cuando necesitas invocar Claude desde un script Python sin mantener sesion de chat — un prompt puntual (clasificacion, resumen, extraccion) que se resuelve en una sola llamada. Ideal para pipelines que procesan chunks de AX tree, texto, o cualquier contenido que requiera razonamiento LLM.
Gotchas
- Requiere
claudeCLI instalado y autenticado en PATH. Si no esta:FileNotFoundError. - Cada llamada lanza un subproceso nuevo — no hay cache ni sesion persistente.
- El CLI puede tardar varios segundos al cold-start. Usa
timeout_sconservador (>=30s). extra_argsse pasan literalmente — validar antes de pasar input de usuario.- En CI/CD sin display interactivo puede requerir
--no-interactiveenextra_args.