ABBI · Reference · ABBI.002.001

v200b Platform Inventory

Every feature, configuration surface, command, skill, tool and integration a v200b session carries — enumerated from the live estate, with each claim marked by how it was established.

Measured 2026-08-12 abbis-mac-studio-4 Claude Code 2.1.229 Boot protocol v15.0

v200b is a session realm, not a product. The CLI it runs is stock Claude Code, shipped as a compiled binary whose source cannot be read. Everything below is therefore established by behaviour, configuration and observed use — never by reading source. The evidence tag on each claim is the most important column in this document.

Measured probed or executed on this machine today Documented from docs or config, not independently verified Unverified asserted but not established

What the estate found while counting itself

Six defects surfaced during enumeration. They are filed in the bug registry; none was repaired, because this was an inventory, not a repair.

Critical  The 11 credential-safety rules are inert

permissions.requirePermission is not a Claude Code settings key. It returns 0 hits in the 2.1.229 binary, while defaultMode (46), bypassPermissions (166), additionalDirectories (20) and autoMemoryEnabled (5) all appear, and invented control keys return 0. It behaves exactly like a key that does not exist.

The 11 rules beneath it cover *credential*, *secret*, *token*, *password* and *.env* for Bash, Edit and Write. With deny empty, ask absent and defaultMode: bypassPermissions, no settings-tier gate covers credential-bearing paths. The Change Gate is a separate mechanism and is unaffected. The fix is one line — rename the key to ask — and it is a gated mutation.

Critical  The offsite Hive Mind backup stopped 27 days ago

The Snowflake copy's newest row is 2026-07-16. The local database is current to the minute (379.6 MB, newest row 22:37 today) and the N1 mirror synced at 18:30. Two of three layers are live; the only one that is not in the same building silently stopped. Its scheduled job is loaded, so a process-level check reports green.

Warning  Canonical Gitea does not reflect the deployed tree

main is 59 commits ahead of origin/main and growing. Nine of those commits carry no Gate-Token and every one was authored by the autocommit watcher, which commits without passing through the hook that attaches the token. The remote pre-receive gate refuses them, so nothing reaches cloud Gitea.

Warning  The authoritative capability map is materially wrong

V200-CAPABILITY-REFERENCE.md states sm_* tools race direct to Snowflake containers. The deployed relay has SF_CONTAINER_BACKENDS = [] — that fleet was deleted on 2026-07-21 and every tool now proxies to the Cloudflare worker. It also records the wrong response envelope and a tool count of 237 against a live 266. Its regeneration job is loaded but the file has not changed since 2026-07-31.

Warning  The MCP server scope is not enforced

The launcher omits --strict-mcp-config, so v200b-mcp.json's deliberate two-server scope is merged with rather than substituted for the six servers in settings. A session silently receives all six, including 45 Framer tools scoped to an Apeirin project and 6 tools with write access to Node 1.

Warning  The skills registry understates itself by five

REGISTRY.md claims 141; the filesystem holds 146. The five missing are asom, model-consensus, deep-research, save-continue and mgc-html-report — four of them core governance. A session consulting the registry would conclude the seven-model panel does not exist. Separately, eight skills sit on disk and never load.


Tools

266v200alb gateway tools
329MCP tools, 6 servers
46tool families
32binary built-ins confirmed

Measured The gateway count came from a direct tools/list POST with nextCursor absent — a single complete page, not a truncated one. Built-ins were established from 746 transcript files and 707,879 lines of observed use, plus permission rules and live schemas. A built-in never called and not in context cannot be proven present, so 32 is a floor, not a ceiling.

By server

ServerToolsTransportPurpose
v200alb266http, Tailscale-directThe gateway. Every external service.
framer-design45stdioFramer canvas, CMS, assets — Apeirin project
n1-fs6stdioNode 1 filesystem, read and write
open-websearch6stdioKeyless multi-engine search
local-hive4stdioLocal Hive Mind, sub-millisecond
context72stdioVersion-accurate library docs

Gateway families, largest first

FamilynWhat it reaches
m36532Mail, calendar, rules, attachments, directory — service account, never the Architect's
asana22Full task/project/section/comment CRUD
cf · vercel15+15DNS, zones, Pages, SSL; projects, deployments, domains, env
dropbox14Service account only — the sole working write path
drive · tailscale12+12Google Drive read/write; tailnet devices, keys, ACL, routes
dc (DealCloud)9102 entry types; create/update/delete are gated writes
azure · bambu · make · runpod8 eachACA and CLI; 3D printer; scenarios; GPU pods
Snowflake7Five accounts — see below
elevenlabs · mac7 eachVoice; Mac Studio shell and files
Model endpoints~20gemini, openai, deepseek, grok, bedrock, azure_openai, copilot, nano_banana
Remaining 30 families~60vision, simli, recall, notebooklm, graphify, slide, gamma, apollo, deepgram, julius, document, markitdown, drawio, makerworld, zerobounce, percy, gfdata, godaddy, github, list_models

Measured Three gateway tools are exposed but absent from a session's advertised set — azure_run_command, mac_run_command, mac_write_file. All three are arbitrary-execution or remote-write. The names are scattered through the listing rather than clipped from its end, so this is a filter, not truncation. The mechanism is inside the closed binary and was not determined.


Skills and commands

146live skills
8file-backed /commands
~123native binary commands
14superpowers sub-skills
15Anthropic bundled skills

Measured 147 directories, of which one (_archive) has no SKILL.md. Counts were taken with find | wc -l independently of the listings, then the listings diffed against them — no listing here is a truncated page. Group totals sum to 146 exactly.

GroupnRepresentative
Core, governance, operating model25devpolicy model-consensus fix-repair completion-gate asom
Infrastructure and cloud26tailscale azure-container-apps cloudflare-workers docker
Data, research, analysis23snowflake edgartools docling ediscovery mdna
Build, test, release17test-panel change-baseline rollback-runner realm-pipeline
Delivery and documents17mgcppt mgc-whitepaper persuasion pacereport
Integrations and external tools12dropbox m365-integration bambu telegram
Session management11objective deliverables end save-continue
Agent frameworks and evaluation8crewai langgraph ragas mem0
Language and shell7node typescript python-patterns zsh

The eight file-backed commands are /PPT, /asom, /bug, /que, /quekill, /quesend, /questat, /queview. Everything else typed with a slash — /objective, /end, /devpolicy, /autobuild — is a skill, not a command file. Three exist in both trees.

Documented The ~123 native commands were extracted from the binary's own command-to-category registry and corroborated by a second independent extraction returning a 99-name subset. Many carry feature-flag or hidden guards, so this is the set the binary defines, not the set a session can type.


Configuration

Measured Precedence runs managed → CLI flags → local → project → user. All of v200b's configuration sits at the lowest tier (~/.claude/settings.json), so any project-level settings file in a working directory would silently outrank it. None exists today; nothing prevents one.

SurfaceStateNote
settings.json keys11 of ~80env, permissions, model, hooks, statusLine, effortLevel, tui, theme, mcpServers, and two more
permissions17 allow, 0 deny, no askdefaultMode: bypassPermissions; the 11 requirePermission rules are inert
Hook events used11 of 3120 unused, including four that can block
Autocompact97%Overridden from the ~75–80% default
Statusline fields consumed5 of ~40cost.* and rate_limits.* arrive every tick and are discarded
CLAUDE.md hierarchyEmpty at all 8 tiers~/CLAUDE.md is a dangling symlink into the dead Dropbox mount
Keybindings fileAbsentAll bindings at default

Measured Because the CLAUDE.md hierarchy is empty, the entire persistent instruction layer is the --append-system-prompt boot prompt plus auto-memory and the compass-inject hooks. There is no CLAUDE.md safety net beneath them. MEMORY.md is 20,219 bytes against a ~25 KB auto-memory ceiling — near the truncation boundary.

Two keybinding collisions specific to this machine


Integrations

5Snowflake accounts
4ABBI server nodes
201Azure container apps
285Tailscale devices
110launchd jobs loaded
28Conductor model aliases

Snowflake — five accounts, one identity

ToolAccountDatabaseRole
sm_sm_query_snowflakeIRA11585SOVEREIGN_MINDACCOUNTADMIN
hurricane_*JGA82554HURRICANEACCOUNTADMIN
banner_*KGB57253BANNER (D365 FSC)BANNER_APP_ROLE
resolute_*MLA96789RESOLUTE_MINDRESOLUTE_APP_ROLE
v2abbi_*SXA84406V2_ABBI_AI_WHV2ABBI_APP_ROLE

Measured All five probed live with CURRENT_ACCOUNT(). The same login, V200_ABBI_ADMIN, reaches all five including V2 production and Resolute — separation here is by account and role, not by identity. Two accounts still run ACCOUNTADMIN.

The four-node server

NodeTailscaleRunsModels
N1100.87.243.54LiteLLM Conductor :4000, Gitea mirror, model-router, Gatus7
N2100.83.16.54Ollama, Kimi via llama-server :80803
N3100.84.18.5Ollama2
N4100.106.20.5Ollama, hosts abbi-embed3

Measured The Conductor load-balances local aliases across all four nodes. It has no redundancy: all four were probed on :4000 and :4001 and only N1:4000 answers. It serves both OpenAI and Anthropic wire formats natively.

Realm separation

The constraint holds at the account, resource-group and tag level — never at the tenant level. Realms share one tailnet, Azure subscription, Cloudflare account, Vercel account, Gitea repo, Mac, and Snowflake login. No realm shares another's credential store or data plane. Two resource groups mix v2 and v200 apps.


What is not established

This section exists because a reference document that hides its own gaps is worse than one that admits them.