# svtoo/atk-registry architecture

> Architecture diagram of the GitHub repository svtoo/atk-registry, generated by GitDiagram from its file tree, README and a sample of source files (last updated 2026-09-25). It is an AI-made overview: check details against the source.

- Interactive diagram: https://gitdiagram.com/svtoo/atk-registry
- Repository: https://github.com/svtoo/atk-registry
- Video tour (about a minute): https://gitdiagram.com/svtoo/atk-registry/video

## Overview

ATK Registry is a curated catalog of plugins that users install by name through ATK. The README establishes that registry workflow, but the supplied tree does not include its index or plugin manifests, so the installation internals cannot be mapped reliably. Sampled runtime code shows several distinct plugin capabilities: Claude chat dashboards, Hindsight memory and bank management, and Piper text-to-speech. The dashboard flow is supported by the sampled hook, server, and regeneration code; other unsampled subsystem wiring is left out.

Main entry points: [`plugins/claude-dashboard/server/regen.py`](https://github.com/svtoo/atk-registry/blob/main/plugins/claude-dashboard/server/regen.py) (Dashboard regen), [`plugins/hindsight/src/hindsight_cli/app.py`](https://github.com/svtoo/atk-registry/blob/main/plugins/hindsight/src/hindsight_cli/app.py) (Hindsight CLI), [`plugins/piper/server.py`](https://github.com/svtoo/atk-registry/blob/main/plugins/piper/server.py) (Speak tool), [`plugins/hindsight/src/hindsight_cli/client.py`](https://github.com/svtoo/atk-registry/blob/main/plugins/hindsight/src/hindsight_cli/client.py) (Hindsight API)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_dashboard["Chat dashboards"]
  node_dashboard_hook["Stop hook"]
  node_preview_hook["Preview hook<br/>[session_open.py]"]
  node_dashboard_server["Dashboard server<br/>[serve.py]"]
  node_regen["Dashboard regen<br/>[regen.py]"]
  node_dashboard_store[("Dashboard store<br/>[store.py]")]
end

subgraph group_hindsight["Hindsight memory"]
  node_hindsight_cli["Hindsight CLI<br/>[app.py]"]
  node_banks["Bank commands<br/>[banks.py]"]
  node_mental_models["Mental models<br/>[mental_models.py]"]
  node_memory_api["Hindsight API<br/>[client.py]"]
  node_conform["Bank configuration<br/>[conform.py]"]
end

subgraph group_piper["Piper speech"]
  node_piper_tool["Speak tool<br/>[server.py]"]
  node_tts["Piper TTS service"]
end

node_user(("ATK user"))
node_atk["ATK CLI"]
node_claude(("Claude Code"))
node_browser(("Browser pane"))
node_transcript[("Chat transcript")]
node_mcp_client(("MCP client"))
node_speakers(("System speakers"))

node_user -->|"installs plugins"| node_atk
node_claude -->|"fires Stop hook"| node_dashboard_hook
node_dashboard_hook -->|"requests regeneration"| node_dashboard_server
node_dashboard_server -->|"dispatches job"| node_regen
node_regen -->|"reads events"| node_transcript
node_regen -->|"records state"| node_dashboard_store
node_preview_hook -->|"prompts to open"| node_browser
node_user -->|"runs commands"| node_hindsight_cli
node_hindsight_cli -->|"dispatches bank commands"| node_banks
node_hindsight_cli -->|"dispatches model commands"| node_mental_models
node_banks -.->|"calls API"| node_memory_api
node_mental_models -.->|"calls API"| node_memory_api
node_conform -->|"configures banks"| node_memory_api
node_mcp_client -->|"invokes speak"| node_piper_tool
node_piper_tool -->|"sends text"| node_tts
node_piper_tool -->|"plays audio"| node_speakers

click node_dashboard_hook "https://github.com/svtoo/atk-registry/blob/main/plugins/claude-dashboard/hooks/dashboard-update-hook.py"
click node_preview_hook "https://github.com/svtoo/atk-registry/blob/main/plugins/claude-dashboard/preview/session_open.py"
click node_dashboard_server "https://github.com/svtoo/atk-registry/blob/main/plugins/claude-dashboard/server/serve.py"
click node_regen "https://github.com/svtoo/atk-registry/blob/main/plugins/claude-dashboard/server/regen.py"
click node_dashboard_store "https://github.com/svtoo/atk-registry/blob/main/plugins/claude-dashboard/server/store.py"
click node_hindsight_cli "https://github.com/svtoo/atk-registry/blob/main/plugins/hindsight/src/hindsight_cli/app.py"
click node_banks "https://github.com/svtoo/atk-registry/blob/main/plugins/hindsight/src/hindsight_cli/banks.py"
click node_mental_models "https://github.com/svtoo/atk-registry/blob/main/plugins/hindsight/src/hindsight_cli/mental_models.py"
click node_memory_api "https://github.com/svtoo/atk-registry/blob/main/plugins/hindsight/src/hindsight_cli/client.py"
click node_conform "https://github.com/svtoo/atk-registry/blob/main/plugins/hindsight/src/conform.py"
click node_piper_tool "https://github.com/svtoo/atk-registry/blob/main/plugins/piper/server.py"

classDef toneNeutral fill:#f8fafc,stroke:#334155,stroke-width:1.5px,color:#0f172a
classDef toneBlue fill:#dbeafe,stroke:#2563eb,stroke-width:1.5px,color:#172554
classDef toneAmber fill:#fef3c7,stroke:#d97706,stroke-width:1.5px,color:#78350f
classDef toneMint fill:#dcfce7,stroke:#16a34a,stroke-width:1.5px,color:#14532d
classDef toneRose fill:#ffe4e6,stroke:#e11d48,stroke-width:1.5px,color:#881337
classDef toneIndigo fill:#e0e7ff,stroke:#4f46e5,stroke-width:1.5px,color:#312e81
classDef toneTeal fill:#ccfbf1,stroke:#0f766e,stroke-width:1.5px,color:#134e4a
class node_dashboard_hook,node_preview_hook,node_dashboard_server,node_regen,node_dashboard_store,node_user,node_browser,node_mcp_client toneBlue
class node_hindsight_cli,node_banks,node_mental_models,node_memory_api,node_conform,node_transcript toneAmber
class node_piper_tool,node_tts toneMint
class node_atk,node_claude,node_speakers toneIndigo
```

## Components

### Chat dashboards

- [Stop hook](https://github.com/svtoo/atk-registry/blob/main/plugins/claude-dashboard/hooks/dashboard-update-hook.py): `plugins/claude-dashboard/hooks/dashboard-update-hook.py`
- [Preview hook](https://github.com/svtoo/atk-registry/blob/main/plugins/claude-dashboard/preview/session_open.py): `plugins/claude-dashboard/preview/session_open.py`
- [Dashboard server](https://github.com/svtoo/atk-registry/blob/main/plugins/claude-dashboard/server/serve.py): `plugins/claude-dashboard/server/serve.py`
- [Dashboard regen](https://github.com/svtoo/atk-registry/blob/main/plugins/claude-dashboard/server/regen.py): `plugins/claude-dashboard/server/regen.py`
- [Dashboard store](https://github.com/svtoo/atk-registry/blob/main/plugins/claude-dashboard/server/store.py): `plugins/claude-dashboard/server/store.py`

### Hindsight memory

- [Hindsight CLI](https://github.com/svtoo/atk-registry/blob/main/plugins/hindsight/src/hindsight_cli/app.py): `plugins/hindsight/src/hindsight_cli/app.py`
- [Bank commands](https://github.com/svtoo/atk-registry/blob/main/plugins/hindsight/src/hindsight_cli/banks.py): `plugins/hindsight/src/hindsight_cli/banks.py`
- [Mental models](https://github.com/svtoo/atk-registry/blob/main/plugins/hindsight/src/hindsight_cli/mental_models.py): `plugins/hindsight/src/hindsight_cli/mental_models.py`
- [Hindsight API](https://github.com/svtoo/atk-registry/blob/main/plugins/hindsight/src/hindsight_cli/client.py): `plugins/hindsight/src/hindsight_cli/client.py`
- [Bank configuration](https://github.com/svtoo/atk-registry/blob/main/plugins/hindsight/src/conform.py): `plugins/hindsight/src/conform.py`

### Piper speech

- [Speak tool](https://github.com/svtoo/atk-registry/blob/main/plugins/piper/server.py): `plugins/piper/server.py`
- **Piper TTS service**

### Other components

- **ATK user**
- **ATK CLI**
- **Claude Code**
- **Browser pane**
- **Chat transcript**
- **MCP client**
- **System speakers**

## Connections

- ATK user → ATK CLI: installs plugins
- Claude Code → Stop hook: fires Stop hook
- Stop hook → Dashboard server: requests regeneration
- Dashboard server → Dashboard regen: dispatches job
- Dashboard regen → Chat transcript: reads events
- Dashboard regen → Dashboard store: records state
- Preview hook → Browser pane: prompts to open
- ATK user → Hindsight CLI: runs commands
- Hindsight CLI → Bank commands: dispatches bank commands
- Hindsight CLI → Mental models: dispatches model commands
- Bank commands → Hindsight API: calls API
- Mental models → Hindsight API: calls API
- Bank configuration → Hindsight API: configures banks
- MCP client → Speak tool: invokes speak
- Speak tool → Piper TTS service: sends text
- Speak tool → System speakers: plays audio
