Skip to content

Claude

MetadataValue
Categoryai
Capabilitieshttp, secrets, shell
Websitehttps://claude.ai
  • conversation — from get_conversation, read_conversation_cli
  • conversation[] — from list_conversations, search_conversations, list_conversations_cli
  • message[] — from import_conversation
  • model[] — from list_models, list_models_cli
  • api — Claude API — inference via the Messages API
  • code — Claude Code — local CLI, uses the user’s existing auth (no API key)
  • web — claude.ai — web chat history via session cookies

One skill for everything Claude. Four access modalities, one product.

ConnectionFileWhat it does
apiclaude_api.pyInference via the Claude API (Messages endpoint)
codeclaude_code.pyInference via the local claude CLI, plus reads local Claude Code state
webclaude_web.pyBrowse/search/import claude.ai chat history

Models are never hardcoded. All operations accept a model parameter that is resolved through the graph (list_models on the relevant connection populates it). See docs/specs/done/no-hardcoded-models.md for rationale.

ToolDescription
list_modelsFetch the current model catalog from api.anthropic.com/v1/models
chatSend a single Messages API request. Supports tools, system prompts, temperature. Returns raw tool_use blocks for the caller to process.

Uses the user’s logged-in claude binary (no API key required) AND reads local on-disk state under ~/.claude/projects/.

ToolDescription
agentRun Claude as an agent via claude -p. Full agent loop — tool use + structured output via --mcp-config / --json-schema.
list_models_cliList Claude models via the keychain OAuth token (no API key). Same endpoint as list_models, different auth.
list_projectsList every project directory under ~/.claude/projects/ with conversation counts and last activity.
list_conversations_cliList local Claude Code conversations (one per JSONL transcript) as shape-native conversation[]. Optional project scope, optional limit.
read_conversation_cliRead a full conversation transcript — returns one conversation with a nested message[] relation (content, blocks, author, published, tool calls).

Note: The code connection uses agent rather than chat because it behaves fundamentally differently from the API — it loops internally over tool calls. Both still @provides(llm) so capability routing can pick either.

The _cli suffix on list_models_cli / list_conversations_cli / read_conversation_cli is because skill tool names share a flat namespace across all .py files in the skill, and the same names are already taken by the api and web connections (for the Anthropic API model list and claude.ai web chats, respectively).

ToolDescription
list_conversationsBrowse conversations, most recent first
get_conversationFull conversation with all messages
search_conversationsSearch by title (client-side filter)
import_conversationImport messages into graph for FTS
list_orgsDiscover orgs and capabilities
check_sessionVerify cookies are valid, return identity
extract_magic_linkParse magic link from raw email (used during login)
  1. Get an API key from https://console.anthropic.com/settings/keys
  2. Add credential in AgentOS Settings → Skills → Claude (API Key)

Install Claude Code and log in:

Terminal window
curl -fsSL https://claude.ai/install.sh | bash # or: brew install claude-code
claude auth login # opens browser for OAuth

Works with Pro/Max/Team/Enterprise subscriptions. Once logged in, claude_code.py uses that auth state directly — no key exchange with agentOS.

No setup needed if you’re logged in to claude.ai in a supported browser (Brave/Firefox). Cookie provider matchmaking extracts sessionKey automatically.