Documentation
¶
Overview ¶
ChatCLI is a multi-provider AI platform for terminal, server, and Kubernetes.
It connects 11 LLM providers (OpenAI, Anthropic Claude, Google Gemini, xAI Grok, ZAI, MiniMax, GitHub Copilot, StackSpot AI, Ollama, and OpenAI Assistants) to a unified interface with autonomous agents, native tool calling, automatic provider failover, and a full AIOps pipeline.
Three Modes of Operation ¶
- Interactive CLI: Terminal-based TUI (Bubble Tea) with context injection, 12 specialized agents running in parallel, and tool calling.
- gRPC Server: Centralized server with JWT + RBAC authentication, TLS 1.3, rate limiting, Prometheus metrics, MCP integration, and plugin/agent discovery.
- Kubernetes Operator: 17 CRDs powering an autonomous AIOps pipeline with anomaly detection, AI-driven root cause analysis, 54+ automated remediation actions, approval workflows, SLO monitoring, and auto-generated post-mortems.
Key Features ¶
- Multi-provider with automatic failover and exponential backoff
- ReAct engine with 12 specialized agents (File, Coder, Shell, Git, Search, Planner, Reviewer, Tester, Refactor, Diagnostics, Formatter, Deps)
- Native tool calling via OpenAI, Anthropic, Google, ZAI, and MiniMax APIs
- MCP (Model Context Protocol) for extending LLM capabilities
- OAuth PKCE + Device Flow authentication with AES-256-GCM encrypted storage
- Plugin system with Ed25519 signature verification
- Persistent contexts, bootstrap files (SOUL.md, USER.md), and long-term memory
- Session management with AES-256-GCM encryption at rest
- Cost tracking per session and provider
- Internationalization (Portuguese and English)
Enterprise Security ¶
- JWT authentication with RBAC roles (admin, user, readonly)
- AES-256-GCM encryption for credentials and sessions
- TLS 1.3 enforcement with mTLS support
- SSRF prevention blocking private IPs and cloud metadata endpoints
- Per-client token-bucket rate limiting
- Ed25519 plugin signature verification
- Agent command allowlist (150+ pre-approved commands)
- Structured audit logging (JSON lines)
- Automated security scanning (govulncheck, gosec, Dependabot)
Installation ¶
brew tap diillson/chatcli && brew install chatcli
Or:
go install github.com/diillson/chatcli@latest
Full documentation: https://chatcli.edilsonfreitas.com
Source code: https://github.com/diillson/chatcli
- ChatCLI - Command Line Interface for LLM interaction
- Copyright (c) 2024 Edilson Freitas
- License: Apache-2.0
Directories
¶
| Path | Synopsis |
|---|---|
|
Package auth provides OAuth authentication flows and secure credential storage for ChatCLI's multi-provider LLM integration.
|
Package auth provides OAuth authentication flows and secure credential storage for ChatCLI's multi-provider LLM integration. |
|
* acp_support.go * * Slash-command surface for the ACP server: the allowlisted subset of the * REPL's commands that works headless (no TUI, no stdin prompt), announced * to ACP clients via available_commands_update and executed through the * regular CommandHandler with stdout captured (scheduler_bridge pattern).
|
* acp_support.go * * Slash-command surface for the ACP server: the allowlisted subset of the * REPL's commands that works headless (no TUI, no stdin prompt), announced * to ACP clients via available_commands_update and executed through the * regular CommandHandler with stdout captured (scheduler_bridge pattern). |
|
agent
* ChatCLI - Command Line Interface for LLM interaction * Copyright (c) 2024 Edilson Freitas * License: Apache-2.0
|
* ChatCLI - Command Line Interface for LLM interaction * Copyright (c) 2024 Edilson Freitas * License: Apache-2.0 |
|
agent/ask
* ChatCLI - AskUser request/answer types and parsing.
|
* ChatCLI - AskUser request/answer types and parsing. |
|
agent/lsp
* ChatCLI - Command Line Interface for LLM interaction * Copyright (c) 2024 Edilson Freitas * License: Apache-2.0
|
* ChatCLI - Command Line Interface for LLM interaction * Copyright (c) 2024 Edilson Freitas * License: Apache-2.0 |
|
agent/mail
* Package mail is the squad's internal message bus: agents (and the user) * send short directed messages to each other, and each recipient drains its * inbox at the next safe turn boundary of its ReAct loop.
|
* Package mail is the squad's internal message bus: agents (and the user) * send short directed messages to each other, and each recipient drains its * inbox at the next safe turn boundary of its ReAct loop. |
|
agent/moa
* ChatCLI - Command Line Interface for LLM interaction * Copyright (c) 2024 Edilson Freitas * License: Apache-2.0
|
* ChatCLI - Command Line Interface for LLM interaction * Copyright (c) 2024 Edilson Freitas * License: Apache-2.0 |
|
agent/park
* Package park: durable snapshots for the agent ReAct loop.
|
* Package park: durable snapshots for the agent ReAct loop. |
|
agent/proc
* ChatCLI - Command Line Interface for LLM interaction * Copyright (c) 2024 Edilson Freitas * License: Apache-2.0
|
* ChatCLI - Command Line Interface for LLM interaction * Copyright (c) 2024 Edilson Freitas * License: Apache-2.0 |
|
agent/quality/convergence
* ChatCLI - Convergence: per-scorer circuit breaker.
|
* ChatCLI - Convergence: per-scorer circuit breaker. |
|
agent/quality/lessonq
* ChatCLI - Lesson Queue: idempotency key derivation.
|
* ChatCLI - Lesson Queue: idempotency key derivation. |
|
agent/runs
* Package runs is the process-wide registry of live agent executions.
|
* Package runs is the process-wide registry of live agent executions. |
|
agent/toolguard
* ChatCLI - Command Line Interface for LLM interaction * Copyright (c) 2024 Edilson Freitas * License: Apache-2.0
|
* ChatCLI - Command Line Interface for LLM interaction * Copyright (c) 2024 Edilson Freitas * License: Apache-2.0 |
|
agent/trajectory
* ChatCLI - Command Line Interface for LLM interaction * Copyright (c) 2024 Edilson Freitas * License: Apache-2.0
|
* ChatCLI - Command Line Interface for LLM interaction * Copyright (c) 2024 Edilson Freitas * License: Apache-2.0 |
|
agent/workers
* ChatCLI - Builtin agent model/effort metadata * Copyright (c) 2024 Edilson Freitas * License: Apache-2.0 * * Shared base struct providing Model() and Effort() for built-in workers.
|
* ChatCLI - Builtin agent model/effort metadata * Copyright (c) 2024 Edilson Freitas * License: Apache-2.0 * * Shared base struct providing Model() and Effort() for built-in workers. |
|
agentevents
* Package agentevents defines the structured event surface the agent/coder * ReAct loop exposes to protocol frontends (ACP today; gateway/MCP later).
|
* Package agentevents defines the structured event surface the agent/coder * ReAct loop exposes to protocol frontends (ACP today; gateway/MCP later). |
|
board
* Package board is the squad's shared work board: a small kanban of cards * (backlog → doing → review → blocked → done) that the orchestrator LLM * manages autonomously via the @board tool and humans inspect via /board.
|
* Package board is the squad's shared work board: a small kanban of cards * (backlog → doing → review → blocked → done) that the orchestrator LLM * manages autonomously via the @board tool and humans inspect via /board. |
|
coder
* ChatCLI - Denial Tracker * Copyright (c) 2024 Edilson Freitas * License: Apache-2.0 * * Tracks consecutive and total denials to prevent infinite permission prompting.
|
* ChatCLI - Denial Tracker * Copyright (c) 2024 Edilson Freitas * License: Apache-2.0 * * Tracks consecutive and total denials to prevent infinite permission prompting. |
|
commands
* ChatCLI - Slash command catalog (resolution + fingerprint cache) * Copyright (c) 2024 Edilson Freitas * License: Apache-2.0
|
* ChatCLI - Slash command catalog (resolution + fingerprint cache) * Copyright (c) 2024 Edilson Freitas * License: Apache-2.0 |
|
compress
Package compress is ChatCLI's content-aware, reversible context-compression layer.
|
Package compress is ChatCLI's content-aware, reversible context-compression layer. |
|
ctxmgr
* ChatCLI - Command Line Interface for LLM interaction * Copyright (c) 2024 Edilson Freitas * License: Apache-2.0
|
* ChatCLI - Command Line Interface for LLM interaction * Copyright (c) 2024 Edilson Freitas * License: Apache-2.0 |
|
gateway
* ChatCLI - Command Line Interface for LLM interaction * Copyright (c) 2024 Edilson Freitas * License: Apache-2.0
|
* ChatCLI - Command Line Interface for LLM interaction * Copyright (c) 2024 Edilson Freitas * License: Apache-2.0 |
|
imgcompress
Package imgcompress shrinks images before they are sent to vision-capable models, cutting upload bytes, latency and (for oversized images) the actual vision-token cost — keylessly, with the standard library only (no cgo, no golang.org/x/image, no network).
|
Package imgcompress shrinks images before they are sent to vision-capable models, cutting upload bytes, latency and (for oversized images) the actual vision-token cost — keylessly, with the standard library only (no cgo, no golang.org/x/image, no network). |
|
mcp
* ChatCLI - MCP Channel Manager * Copyright (c) 2024 Edilson Freitas * License: Apache-2.0 * * Production-grade push-message ring for MCP servers: * * - Bounded in-memory ring (Push / GetRecent / GetByChannel / Count) * keeps the working set hot and lock-friendly.
|
* ChatCLI - MCP Channel Manager * Copyright (c) 2024 Edilson Freitas * License: Apache-2.0 * * Production-grade push-message ring for MCP servers: * * - Bounded in-memory ring (Push / GetRecent / GetByChannel / Count) * keeps the working set hot and lock-friendly. |
|
mcp/triggers
* ChatCLI - MCP channel reactive triggers * Copyright (c) 2024 Edilson Freitas * License: Apache-2.0 * * The trigger engine turns inbound MCP channel messages into actionable * events for the CLI.
|
* ChatCLI - MCP channel reactive triggers * Copyright (c) 2024 Edilson Freitas * License: Apache-2.0 * * The trigger engine turns inbound MCP channel messages into actionable * events for the CLI. |
|
metrics
Go Multi-Agent - Metrics Display
|
Go Multi-Agent - Metrics Display |
|
outputpolicy
Package outputpolicy reduces the tokens a model *generates* (the output side of the bill, complementary to the input/context compression in cli/compress).
|
Package outputpolicy reduces the tokens a model *generates* (the output side of the bill, complementary to the input/context compression in cli/compress). |
|
palette
* ChatCLI - AskUser interactive overlay.
|
* ChatCLI - AskUser interactive overlay. |
|
paste
* ChatCLI - Paste Detection * cli/paste/detector.go * Copyright (c) 2024 Edilson Freitas * License: Apache-2.0
|
* ChatCLI - Paste Detection * cli/paste/detector.go * Copyright (c) 2024 Edilson Freitas * License: Apache-2.0 |
|
plugins
* ChatCLI - Command Line Interface for LLM interaction * Copyright (c) 2024 Edilson Freitas * License: Apache-2.0
|
* ChatCLI - Command Line Interface for LLM interaction * Copyright (c) 2024 Edilson Freitas * License: Apache-2.0 |
|
rpcserve
* ChatCLI - Command Line Interface for LLM interaction * Copyright (c) 2024 Edilson Freitas * License: Apache-2.0
|
* ChatCLI - Command Line Interface for LLM interaction * Copyright (c) 2024 Edilson Freitas * License: Apache-2.0 |
|
scheduler
* ChatCLI - Scheduler: append-only JSONL audit log.
|
* ChatCLI - Scheduler: append-only JSONL audit log. |
|
scheduler/action
* AgentResume — fires when a parked agent's wait condition is satisfied * and the interactive ReAct loop should re-enter.
|
* AgentResume — fires when a parked agent's wait condition is satisfied * and the interactive ReAct loop should re-enter. |
|
scheduler/builtins
* Package builtins wires the built-in condition evaluators and action * executors into a Scheduler.
|
* Package builtins wires the built-in condition evaluators and action * executors into a Scheduler. |
|
scheduler/condition
* Package condition: built-in evaluators registry.
|
* Package condition: built-in evaluators registry. |
|
taskgraph
* The engine is the deterministic orchestrator of one run: it owns every * state transition, schedules tasks the moment their dependencies complete * (ready-set scheduling, not level barriers), runs validation gates itself, * and only promotes a task to done on an independent reviewer's verdict.
|
* The engine is the deterministic orchestrator of one run: it owns every * state transition, schedules tasks the moment their dependencies complete * (ready-set scheduling, not level barriers), runs validation gates itself, * and only promotes a task to done on an independent reviewer's verdict. |
|
taskgraph/dash
* Package dash serves the live task-graph dashboard: a single-file canvas * UI (embedded, zero CDN) over three read-only endpoints that read the * persisted run state from disk on every request.
|
* Package dash serves the live task-graph dashboard: a single-file canvas * UI (embedded, zero CDN) over three read-only endpoints that read the * persisted run state from disk on every request. |
|
telemetry
* ChatCLI - Command Line Interface for LLM interaction * Copyright (c) 2024 Edilson Freitas * License: Apache-2.0 * * OpenTelemetry metrics export over OTLP/HTTP (JSON encoding), with no * SDK dependency: the exporter renders the standard ExportMetricsService * request by hand and pushes cumulative counters on an interval.
|
* ChatCLI - Command Line Interface for LLM interaction * Copyright (c) 2024 Edilson Freitas * License: Apache-2.0 * * OpenTelemetry metrics export over OTLP/HTTP (JSON encoding), with no * SDK dependency: the exporter renders the standard ExportMetricsService * request by hand and pushes cumulative counters on an interval. |
|
workspace
* ChatCLI - Command Line Interface for LLM interaction * Copyright (c) 2024 Edilson Freitas * License: Apache-2.0 * * Instruction-file hierarchy and @imports.
|
* ChatCLI - Command Line Interface for LLM interaction * Copyright (c) 2024 Edilson Freitas * License: Apache-2.0 * * Instruction-file hierarchy and @imports. |
|
workspace/memory
* ChatCLI - Change notification for memory sub-stores * Copyright (c) 2024 Edilson Freitas * License: Apache-2.0 * * changeNotifier is the one-line "mark derived caches stale" seam each * sub-store embeds.
|
* ChatCLI - Change notification for memory sub-stores * Copyright (c) 2024 Edilson Freitas * License: Apache-2.0 * * changeNotifier is the one-line "mark derived caches stale" seam each * sub-store embeds. |
|
workspace/memory/eval
* ChatCLI - Long-term memory: retrieval evaluation harness.
|
* ChatCLI - Long-term memory: retrieval evaluation harness. |
|
workspace/threatscan
* ChatCLI - Command Line Interface for LLM interaction * Copyright (c) 2024 Edilson Freitas * License: Apache-2.0
|
* ChatCLI - Command Line Interface for LLM interaction * Copyright (c) 2024 Edilson Freitas * License: Apache-2.0 |
|
client
|
|
|
remote
* ChatCLI - Command Line Interface for LLM interaction * Copyright (c) 2024 Edilson Freitas * License: Apache-2.0
|
* ChatCLI - Command Line Interface for LLM interaction * Copyright (c) 2024 Edilson Freitas * License: Apache-2.0 |
|
Package cmd holds the subcommand implementations that main.go dispatches to: /connect (remote server), /server (host mode), /watch (K8s observer), and friends.
|
Package cmd holds the subcommand implementations that main.go dispatches to: /connect (remote server), /server (host mode), /watch (K8s observer), and friends. |
|
Package config provides configuration management for ChatCLI with environment variable loading, versioned migration, and runtime defaults.
|
Package config provides configuration management for ChatCLI with environment variable loading, versioned migration, and runtime defaults. |
|
Package i18n provides internationalization support for ChatCLI with automatic locale detection and embedded translation files.
|
Package i18n provides internationalization support for ChatCLI with automatic locale detection and embedded translation files. |
|
Package llm provides shared utilities for the chatcli LLM provider layer.
|
Package llm provides shared utilities for the chatcli LLM provider layer. |
|
bedrock
* ChatCLI - Shared AWS runtime client construction.
|
* ChatCLI - Shared AWS runtime client construction. |
|
catalog
* ChatCLI - Command Line Interface for LLM interaction * Copyright (c) 2024 Edilson Freitas * License: Apache-2.0
|
* ChatCLI - Command Line Interface for LLM interaction * Copyright (c) 2024 Edilson Freitas * License: Apache-2.0 |
|
claudeai
* ChatCLI - Anthropic cache_control breakpoint planner * Copyright (c) 2024 Edilson Freitas * License: Apache-2.0
|
* ChatCLI - Anthropic cache_control breakpoint planner * Copyright (c) 2024 Edilson Freitas * License: Apache-2.0 |
|
client
* ChatCLI - Command Line Interface for LLM interaction * Copyright (c) 2024 Edilson Freitas * License: Apache-2.0 * * Request audit sink.
|
* ChatCLI - Command Line Interface for LLM interaction * Copyright (c) 2024 Edilson Freitas * License: Apache-2.0 * * Request audit sink. |
|
copilot
* ChatCLI - Command Line Interface for LLM interaction * Copyright (c) 2024 Edilson Freitas * License: Apache-2.0
|
* ChatCLI - Command Line Interface for LLM interaction * Copyright (c) 2024 Edilson Freitas * License: Apache-2.0 |
|
credpool
* ChatCLI - Command Line Interface for LLM interaction * Copyright (c) 2024 Edilson Freitas * License: Apache-2.0
|
* ChatCLI - Command Line Interface for LLM interaction * Copyright (c) 2024 Edilson Freitas * License: Apache-2.0 |
|
devincli
Package devincli implements the DEVIN provider as a wrapper around the local Devin CLI (Cognition).
|
Package devincli implements the DEVIN provider as a wrapper around the local Devin CLI (Cognition). |
|
embedding
* ChatCLI - AWS Bedrock embeddings provider.
|
* ChatCLI - AWS Bedrock embeddings provider. |
|
embedding/vindex
* ChatCLI - Generic cosine vector index.
|
* ChatCLI - Generic cosine vector index. |
|
fallback
Package fallback implements the provider fallback chain for automatic failover between LLM providers.
|
Package fallback implements the provider fallback chain for automatic failover between LLM providers. |
|
googleai
* ChatCLI - Command Line Interface for LLM interaction * Copyright (c) 2024 Edilson Freitas * License: Apache-2.0 * * Gemini token counting (POST models/{model}:countTokens).
|
* ChatCLI - Command Line Interface for LLM interaction * Copyright (c) 2024 Edilson Freitas * License: Apache-2.0 * * Gemini token counting (POST models/{model}:countTokens). |
|
imagegen
* ChatCLI - Stable Diffusion WebUI (AUTOMATIC1111) image provider.
|
* ChatCLI - Stable Diffusion WebUI (AUTOMATIC1111) image provider. |
|
internal/audio
* ChatCLI - Command Line Interface for LLM interaction * Copyright (c) 2024 Edilson Freitas * License: Apache-2.0
|
* ChatCLI - Command Line Interface for LLM interaction * Copyright (c) 2024 Edilson Freitas * License: Apache-2.0 |
|
internal/provision
* ChatCLI - Shared self-provisioning helpers for embedded audio engines.
|
* ChatCLI - Shared self-provisioning helpers for embedded audio engines. |
|
internal/visionwire
Package visionwire converts the provider-agnostic models.ImageContent carried on a message into the per-provider wire formats for vision (multimodal) input.
|
Package visionwire converts the provider-agnostic models.ImageContent carried on a message into the per-provider wire formats for vision (multimodal) input. |
|
manager
Package manager provides the LLM provider manager that creates and caches LLM clients based on provider name and model configuration.
|
Package manager provides the LLM provider manager that creates and caches LLM clients based on provider name and model configuration. |
|
minimax
* ChatCLI - Command Line Interface for LLM interaction * Copyright (c) 2024 Edilson Freitas * License: Apache-2.0 * * MiniMax token counting (POST /v1/responses/input_tokens): the endpoint * takes the same request the model would answer and returns how many input * tokens it counts, without running it.
|
* ChatCLI - Command Line Interface for LLM interaction * Copyright (c) 2024 Edilson Freitas * License: Apache-2.0 * * MiniMax token counting (POST /v1/responses/input_tokens): the endpoint * takes the same request the model would answer and returns how many input * tokens it counts, without running it. |
|
moonshot
* ChatCLI - Command Line Interface for LLM interaction * Copyright (c) 2024 Edilson Freitas * License: Apache-2.0 * * Moonshot/Kimi token counting (POST /v1/tokenizers/estimate-token-count): * the same messages the chat call would carry, answered as * data.total_tokens.
|
* ChatCLI - Command Line Interface for LLM interaction * Copyright (c) 2024 Edilson Freitas * License: Apache-2.0 * * Moonshot/Kimi token counting (POST /v1/tokenizers/estimate-token-count): * the same messages the chat call would carry, answered as * data.total_tokens. |
|
ollama
* ChatCLI - Command Line Interface for LLM interaction * Copyright (c) 2024 Edilson Freitas * License: Apache-2.0
|
* ChatCLI - Command Line Interface for LLM interaction * Copyright (c) 2024 Edilson Freitas * License: Apache-2.0 |
|
openai
* ChatCLI - Command Line Interface for LLM interaction * Copyright (c) 2024 Edilson Freitas * License: Apache-2.0 * * GPT token counting: OpenAI publishes no counting endpoint, so the count * runs locally with the model's BPE encoding (llm/tokenizer) — exact and * keyless, with the vocabulary cached once under ~/.chatcli/tokenizers.
|
* ChatCLI - Command Line Interface for LLM interaction * Copyright (c) 2024 Edilson Freitas * License: Apache-2.0 * * GPT token counting: OpenAI publishes no counting endpoint, so the count * runs locally with the model's BPE encoding (llm/tokenizer) — exact and * keyless, with the vocabulary cached once under ~/.chatcli/tokenizers. |
|
openaiassistant
* ChatCLI - Command Line Interface for LLM interaction * Copyright (c) 2024 Edilson Freitas * License: Apache-2.0
|
* ChatCLI - Command Line Interface for LLM interaction * Copyright (c) 2024 Edilson Freitas * License: Apache-2.0 |
|
openairesponses
* ChatCLI - Command Line Interface for LLM interaction * Copyright (c) 2024 Edilson Freitas * License: Apache-2.0 * * GPT token counting: OpenAI publishes no counting endpoint, so the count * runs locally with the model's BPE encoding (llm/tokenizer) — exact and * keyless, with the vocabulary cached once under ~/.chatcli/tokenizers.
|
* ChatCLI - Command Line Interface for LLM interaction * Copyright (c) 2024 Edilson Freitas * License: Apache-2.0 * * GPT token counting: OpenAI publishes no counting endpoint, so the count * runs locally with the model's BPE encoding (llm/tokenizer) — exact and * keyless, with the vocabulary cached once under ~/.chatcli/tokenizers. |
|
openrouter
* ChatCLI - Command Line Interface for LLM interaction * Copyright (c) 2024 Edilson Freitas * License: Apache-2.0 * * GPT token counting: OpenAI publishes no counting endpoint, so the count * runs locally with the model's BPE encoding (llm/tokenizer) — exact and * keyless, with the vocabulary cached once under ~/.chatcli/tokenizers.
|
* ChatCLI - Command Line Interface for LLM interaction * Copyright (c) 2024 Edilson Freitas * License: Apache-2.0 * * GPT token counting: OpenAI publishes no counting endpoint, so the count * runs locally with the model's BPE encoding (llm/tokenizer) — exact and * keyless, with the vocabulary cached once under ~/.chatcli/tokenizers. |
|
pricing
Package pricing is a leaf registry of per-model token rates discovered at runtime — the per-account prices a provider reports in its own model listing (the Devin CLI's cost_summary today).
|
Package pricing is a leaf registry of per-model token rates discovered at runtime — the per-account prices a provider reports in its own model listing (the Devin CLI's cost_summary today). |
|
ratelimit
* ChatCLI - Command Line Interface for LLM interaction * Copyright (c) 2024 Edilson Freitas * License: Apache-2.0
|
* ChatCLI - Command Line Interface for LLM interaction * Copyright (c) 2024 Edilson Freitas * License: Apache-2.0 |
|
registry
Package registry provides the auto-register mechanism for LLM providers.
|
Package registry provides the auto-register mechanism for LLM providers. |
|
stackspotai
* ChatCLI - Command Line Interface for LLM interaction * Copyright (c) 2024 Edilson Freitas * License: Apache-2.0
|
* ChatCLI - Command Line Interface for LLM interaction * Copyright (c) 2024 Edilson Freitas * License: Apache-2.0 |
|
token
* ChatCLI - Command Line Interface for LLM interaction * Copyright (c) 2024 Edilson Freitas * License: Apache-2.0
|
* ChatCLI - Command Line Interface for LLM interaction * Copyright (c) 2024 Edilson Freitas * License: Apache-2.0 |
|
tokenizer
* ChatCLI - Command Line Interface for LLM interaction * Copyright (c) 2024 Edilson Freitas * License: Apache-2.0 * * Local tokenizer for the GPT family.
|
* ChatCLI - Command Line Interface for LLM interaction * Copyright (c) 2024 Edilson Freitas * License: Apache-2.0 * * Local tokenizer for the GPT family. |
|
toolshim
Package toolshim provides a conversion layer that enables LLM providers without native tool calling support to use structured tool definitions.
|
Package toolshim provides a conversion layer that enables LLM providers without native tool calling support to use structured tool definitions. |
|
transcription
* ChatCLI - Local command transcription provider.
|
* ChatCLI - Local command transcription provider. |
|
tts
* ChatCLI - Local command TTS provider.
|
* ChatCLI - Local command TTS provider. |
|
xai
* ChatCLI - Command Line Interface for LLM interaction * Copyright (c) 2024 Edilson Freitas * License: Apache-2.0 * * xAI token counting (POST /v1/tokenize-text): the endpoint tokenizes a * string and returns the tokens, so the count is the length of that array.
|
* ChatCLI - Command Line Interface for LLM interaction * Copyright (c) 2024 Edilson Freitas * License: Apache-2.0 * * xAI token counting (POST /v1/tokenize-text): the endpoint tokenizes a * string and returns the tokens, so the count is the length of that array. |
|
zai
* ChatCLI - Command Line Interface for LLM interaction * Copyright (c) 2024 Edilson Freitas * License: Apache-2.0 * * Z.AI (GLM) token counting (POST /api/paas/v4/tokenizer): the same * messages the chat call would carry, answered as usage.prompt_tokens.
|
* ChatCLI - Command Line Interface for LLM interaction * Copyright (c) 2024 Edilson Freitas * License: Apache-2.0 * * Z.AI (GLM) token counting (POST /api/paas/v4/tokenizer): the same * messages the chat call would carry, answered as usage.prompt_tokens. |
|
* ChatCLI - Command Line Interface for LLM interaction * Copyright (c) 2024 Edilson Freitas * License: Apache-2.0
|
* ChatCLI - Command Line Interface for LLM interaction * Copyright (c) 2024 Edilson Freitas * License: Apache-2.0 |
|
Package models defines the shared data types used across all ChatCLI components — CLI, server, operator, and LLM providers.
|
Package models defines the shared data types used across all ChatCLI components — CLI, server, operator, and LLM providers. |
|
operator
module
|
|
|
pkg
|
|
|
atrest
Package atrest is the single encryption-at-rest primitive for ChatCLI's durable stores (saved sessions, autosaves, MCP session mirrors, park snapshots).
|
Package atrest is the single encryption-at-rest primitive for ChatCLI's durable stores (saved sessions, autosaves, MCP session mirrors, park snapshots). |
|
auditchain
* ChatCLI - Command Line Interface for LLM interaction * Copyright (c) 2024 Edilson Freitas * License: Apache-2.0 * * Hash-chained, multi-writer audit trail.
|
* ChatCLI - Command Line Interface for LLM interaction * Copyright (c) 2024 Edilson Freitas * License: Apache-2.0 * * Hash-chained, multi-writer audit trail. |
|
browser
* cdp.go — a deliberately small Chrome DevTools Protocol client.
|
* cdp.go — a deliberately small Chrome DevTools Protocol client. |
|
coder/engine
* checkpoint.go — shadow-git safety net for the coder engine.
|
* checkpoint.go — shadow-git safety net for the coder engine. |
|
flock
* ChatCLI - Command Line Interface for LLM interaction * Copyright (c) 2024 Edilson Freitas * License: Apache-2.0 * * Cross-process file locks for the shared stores.
|
* ChatCLI - Command Line Interface for LLM interaction * Copyright (c) 2024 Edilson Freitas * License: Apache-2.0 * * Cross-process file locks for the shared stores. |
|
fspath
Package fspath provides filesystem path comparison helpers that are correct across operating systems.
|
Package fspath provides filesystem path comparison helpers that are correct across operating systems. |
|
jwtkey
Package jwtkey resolves the JWT verification material a ChatCLI server is configured with, and reports which algorithm that material selects.
|
Package jwtkey resolves the JWT verification material a ChatCLI server is configured with, and reports which algorithm that material selects. |
|
knowledge
* ChatCLI - Command Line Interface for LLM interaction * Copyright (c) 2024 Edilson Freitas * License: Apache-2.0
|
* ChatCLI - Command Line Interface for LLM interaction * Copyright (c) 2024 Edilson Freitas * License: Apache-2.0 |
|
persona
* activation_text.go — flat-prompt skill activation helpers.
|
* activation_text.go — flat-prompt skill activation helpers. |
|
persona/builtin
* ChatCLI - Persona System * pkg/persona/builtin/embedded.go * Copyright (c) 2024 Edilson Freitas * License: Apache-2.0
|
* ChatCLI - Persona System * pkg/persona/builtin/embedded.go * Copyright (c) 2024 Edilson Freitas * License: Apache-2.0 |
|
persona/usage
* ChatCLI - Skill usage analytics.
|
* ChatCLI - Skill usage analytics. |
|
registry
* ChatCLI - ChatCLI.dev Registry Adapter * Copyright (c) 2024 Edilson Freitas * License: Apache-2.0 * * Implements SkillRegistry for the official ChatCLI skill registry.
|
* ChatCLI - ChatCLI.dev Registry Adapter * Copyright (c) 2024 Edilson Freitas * License: Apache-2.0 * * Implements SkillRegistry for the official ChatCLI skill registry. |
|
plugins-examples
|
|
|
chatcli-coder
command
|
|
|
chatcli-docker-clean
command
|
|
|
chatcli-docker-list
command
|
|
|
chatcli-dockerhub
command
|
|
|
chatcli-dockerps
command
|
|
|
chatcli-dockerrun
command
|
|
|
chatcli-docs-flatten
command
|
|
|
chatcli-gobenchgen
command
|
|
|
chatcli-gobenchrun
command
|
|
|
chatcli-hackernews
command
|
|
|
chatcli-lotus-scan
command
|
|
|
chatcli-lotus-write
command
|
|
|
chatcli-wikipedia
command
|
|
|
proto
|
|
|
hub
* Agent-run mirroring: the optional hub capability behind cross-process * /agents.
|
* Agent-run mirroring: the optional hub capability behind cross-process * /agents. |
|
tools
|
|
|
docgen
command
Package main is the docgen helper: it introspects the CLI command surface and writes the Markdown cheatsheet consumed by the docs site.
|
Package main is the docgen helper: it introspects the CLI command surface and writes the Markdown cheatsheet consumed by the docs site. |
|
qg/cmd/qg-cover-total
command
|
|
|
qg/cmd/qg-diffcover
command
|
|
|
qg/cmd/qg-fan-in
command
qg-fan-in counts how many packages in the module import each of the packages reachable from a list of files.
|
qg-fan-in counts how many packages in the module import each of the packages reachable from a list of files. |
|
qg/cmd/qg-i18n-parity
command
|
|
|
qg/cmd/qg-provider-parity
command
|
|
|
qg/cmd/qg-verdict
command
qg-verdict renders the Quality Gate sticky-comment markdown and emits the aggregate verdict.
|
qg-verdict renders the Quality Gate sticky-comment markdown and emits the aggregate verdict. |
|
ui
|
|
|
kit
* ChatCLI - UI kit: badges * Copyright (c) 2024 Edilson Freitas * License: Apache-2.0
|
* ChatCLI - UI kit: badges * Copyright (c) 2024 Edilson Freitas * License: Apache-2.0 |
|
theme
* ChatCLI - Legacy ANSI recoloring * Copyright (c) 2024 Edilson Freitas * License: Apache-2.0 * * The codebase colors most output by concatenating the historical 16-color * constants (ColorYellow, ColorCyan, …) and handing the result to a Colorize * helper.
|
* ChatCLI - Legacy ANSI recoloring * Copyright (c) 2024 Edilson Freitas * License: Apache-2.0 * * The codebase colors most output by concatenating the historical 16-color * constants (ColorYellow, ColorCyan, …) and handing the result to a Colorize * helper. |
|
* ChatCLI - Command Line Interface for LLM interaction * Copyright (c) 2024 Edilson Freitas * License: Apache-2.0
|
* ChatCLI - Command Line Interface for LLM interaction * Copyright (c) 2024 Edilson Freitas * License: Apache-2.0 |
|
* ChatCLI - Command Line Interface for LLM interaction * Copyright (c) 2024 Edilson Freitas * License: Apache-2.0
|
* ChatCLI - Command Line Interface for LLM interaction * Copyright (c) 2024 Edilson Freitas * License: Apache-2.0 |
Click to show internal directories.
Click to hide internal directories.