Annie CLI is a terminal-native AI assistant for infrastructure observability. Ask natural language questions, pipe in kubectl output or logs, and get markdown-rendered answers, all from your terminal.
Get Started
Core Usage
Interactive Chat
Launch annie with no arguments to enter the full-screen TUI: active project in the banner, animated thinking spinner, scrollable viewport, and markdown-rendered responses. Context is maintained across the session for natural follow-ups. Slash commands autocomplete: start with / and press TAB.
One-Shot Queries
For scripting or quick questions, use annie ask:
# Ask a question directly
annie ask "why is checkout slow?"
# Add context
annie ask "what changed?" --context env=prod --context team=payments
# JSON output for scripting
annie ask "list services" --output json | jq '.answer'
Pipe Anything
Annie reads piped stdin automatically. Feed it logs, events, or any text for instant analysis:
kubectl get events -A | annie ask "anything unusual?"
kubectl logs -n prod -l app=backend --tail=200 | annie
cat error.log | annie ask "what's the root cause?"
When both stdin and stdout are pipes, Annie falls back to one-shot mode for scripting.
Root Cause Analyses
Annie runs a multi-step investigation when you ask for an RCA: hypotheses are generated, refined, and ranked by confidence. Use this when the question is “why is X failing” rather than “what is X”.
annie ask --rca "why are our database connection pools getting exhausted?"
Or in the TUI: /rca why are our database connection pools getting exhausted?
Each RCA answer ends with hypotheses labeled [H1], [H2], [H3] and a confidence score for each.
Use from AI Coding Agents
Annie works as a bridge between AI coding agents and your infrastructure. For example, from inside Claude Code:
> Use the annie cli to determine how many ec2 instances are in <Anyshift Project Name>
Claude Code runs annie ask on your behalf, interprets the response, and incorporates the infrastructure context into your workflow.