dotty-stackchan CLAUDE.md

dotty-stackchan CLAUDE.md is an instructions file for coding agents from BrettKinny/dotty-stackchan. It costs 4,618 tokens per session, scanned A, original, MIT.

Project instructions for Dotty, a self-hosted voice assistant running on an M5Stack StackChan robot. They also define how AI-assisted work must be attributed and reviewed.

In plain words
What is it for?
Working on the robot’s voice stack, its coding-agent container, setup process, and documentation or commits that need AI-assistance disclosure.
Why use it?
They help coding agents understand the project’s architecture and follow its requirement to preserve human accountability for AI-written changes.

Instructions file

Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

agentmods
npx agentmods add instructions/brettkinny/dotty-stackchan/claude-md
Clone the repo
git clone --depth 1 https://github.com/BrettKinny/dotty-stackchan

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for dotty-stackchan CLAUDE.md

README.md
[![agentmods](https://agentmods.dev/badge/instructions/brettkinny/dotty-stackchan/claude-md.svg)](https://agentmods.dev/instructions/brettkinny/dotty-stackchan/claude-md)
Your own site
<a href="https://agentmods.dev/instructions/brettkinny/dotty-stackchan/claude-md"><img src="https://agentmods.dev/badge/instructions/brettkinny/dotty-stackchan/claude-md.svg" alt="Measured on agentmods" height="20"></a>
Per session 4,618 This file is loaded in full into every session.
When invoked 4,618 The same file — it is already loaded in full.
Security scan A 1 finding. Scan, not verified.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5 $0.04618 $0.04618
Opus 5 $0.02309 $0.02309
Sonnet 5 $0.00924 $0.00924
Haiku 4.5 $0.00462 $0.00462

Measured 4d ago against content hash aa418d3b2093, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade A, and why

dotty-stackchan CLAUDE.md scanned grade A with 1 finding against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 4d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Makes network callslowCapability

Not a fault in itself. Listed so you know the mod talks to something, and to what.

- **Test the dashboard service**: `curl http://<XIAOZHI_HOST>:8081/health`
CLAUDE.md · 216 lines

How it starts

The opening of the file, as written. The whole thing — 216 lines — stays where its author put it; the contents beside it link to each section on GitHub.

Dotty

AI transparency (binding on agents)

This is a human-focused project, made by humans, for humans, that is openly AI-assisted. If you are an AI agent working here, the project's AI policy (AI_TRANSPARENCY.md) is binding on you, not just descriptive. The core rule: anything you author is acknowledged as such. In practice:

  • Keep the Co-Authored-By: trailer naming your model on every commit you help write (the global commit/PR conventions already require this — honour them, never strip them).
  • Note AI assistance in PR bodies you draft, and mark substantial AI-drafted docs as such.
  • Never present agent work as unaided human work, and never remove existing attribution. Leave the human-accountability chain intact: you propose, a human reviews and is accountable for what lands. Don't merge to main unattended.

What This Is

Your self-hosted StackChan robot assistant. A fully self-hosted voice stack for the M5Stack StackChan desktop robot. The default persona is "Dotty" (customizable via make setup). Voice I/O routes through a self-hosted xiaozhi-esp32-server; the brain is a pi coding agent running in the dotty-pi container. No cloud AI services — fully self-hosted except for the LLM call (replaceable with local Ollama).

Architecture

The voice path runs through a single LLM provider — PiVoiceLLM, selected via selected_module.LLM in data/.config.yaml. One alternate provider ships as a fallback (OpenAICompat). (The former Tier1Slim two-tier provider was removed in the 2026-05-29 alignment pass — its tool escalation depended on the retired ZeroClaw bridge.)

                 StackChan hardware → configured persona
                   │  ESP32-S3, xiaozhi firmware (built from m5stack/StackChan source)
                   │  WiFi / WebSocket (Xiaozhi protocol)
                   ▼
                 xiaozhi-esp32-server (Docker)
                   ├─ ASR: FunASR SenseVoiceSmall / WhisperLocal (local)
                   ├─ TTS: LocalPiper; EdgeTTS / StreamingEdgeTTS alternates
                   └─ LLM: PiVoiceLLM
                        │  PiClient → `docker exec -i dotty-pi pi --mode rpc …`  (JSONL over stdio)
                        ▼
                 dotty-pi container — the pi coding agent (the brain)
                   ├─ outer loop: qwen3.5:4b on llama-swap
                   └─ dotty-pi-ext extension → 7 voice tools:
                        memory_lookup · remember · recall_person · remember_person · think_hard (→ qwen3.6:27b-think) · take_photo · play_song
                   only TTS-bound text streams back to xiaozhi-server

  Perception + ambient behaviour:  firmware `event` frames → xiaozhi relay → dotty-behaviour (FastAPI, :8090)
  Admin dashboard:                 bridge.py (FastAPI, :8081, served at /ui)

Read the full file on GitHub · 216 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 4d ago First seen · 216 lines · 4,618 tokens per session scan A aa418d3b2093

Subscribe to this mod's changes

dotty-stackchan CLAUDE.md is an instructions file published in the GitHub repository BrettKinny/dotty-stackchan (105 stars, last pushed 1mo ago), licensed MIT. It adds 4,618 tokens to every session, about $0.0231 per session on Opus 5. A static security scan graded it A with 1 finding (makes network calls). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.

Related

Other instructions, from other repositories