spc
CLAUDE.md41 starsChanged 3 months agoMITView on GitHub
This project tracks workflow state, tasks, design decisions, and blockers using state-memory-mcp with project slug "spc". This project utilizes vision-memory-mcp to cache visual states, record layout transitions, provide element grounding, and avoid repetitive LLM vision calls.
In this repository7 other files it gives its agents.
- .agents/AGENTS.mdAGENTS.md
- .github/copilot-instructions.mdCopilot instructions
- .cursor/rules/state-memory-mcp.mdcCursor rule
- .cursor/rules/vision-memory-mcp.mdcCursor rule
- state-memory-mcpSkill
- video-ingestSkill
- vision-memory-mcpSkill
The file
Show its rules and text
We split this CLAUDE.md into the rules it gives an agent
21 rules. About 0 are common, 3 are distinctive, and 18 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈3
Distinctive · estimate
This author's own choices. Worth a look.
18
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 6
Before doing any coding or investigation:
- Very specific: line 16
Starting a session: Always call manage_sessions(action: "start", agent_id: "my-agent") to track all mutations under a unique session.
- Very specific: line 17
Starting a new task: Create a node with manage_nodes(action: "create", type: "task", title: "...", session_id: session_id).
- Very specific: line 18
Making a design or implementation decision: Document it with manage_nodes(action: "create", type: "decision", title: "...", metadata: { …
- Very specific: line 22
Completing a task: Update status to done using manage_tasks(action: "complete", task_id: task_id) or manage_nodes(action: "update", id: …
- Very specific: line 23
Creating/generating a new file: Create an artifact node with manage_nodes(action: "create", type: "artifact", title: "...", session_id: …
- Very specific: line 26
Start of session: Call manage_sessions(action: "start") to align and track work, then run get_analytics(action: "summary"), …
- Very specific: line 29
Validation & Resolution: Run run_diagnostics(action: "validate") to ensure no cycles/orphans/contradictions, mark tasks as "done", document …
- Distinctive: line 32
If the project was just initialized or is missing high-level structure (Plans, Milestones, Decisions):
- Distinctive: line 33
Inspect the Codebase: Read the README and core files to understand the roadmap and architecture.
- Very specific: line 34
Scaffold the Roadmap: Create a plan node (e.g., "Project Roadmap") and add milestone nodes representing key target phases, connecting them …
- Very specific: line 35
Scaffold Architecture: Create decision nodes representing core technical choices (e.g., choice of databases, frameworks) and link them to …
- Very specific: line 43
Orient: Call get_session_context to align your visual state context at the start of work.
- Very specific: line 44
Search: Call recall_memory (text/image search) before recreating duplicate UI state paths.
- Very specific: line 45
Ingest/Verify: ALWAYS call analyze_screenshot before querying any front-end vision models.
- Very specific: line 46
Cache Hit (
is_known: true): Do NOT use vision models; read the returned description as context and use grounded_elements (selectors, … - Very specific: line 48
Action Target Execution: Use predict_next_action to retrieve grounded_target handles (target_selector, target_coords) for deterministic UI …
- Very specific: line 49
Transitions: Call record_outcome after every click/type/scroll action to construct navigation paths.
- Very specific: line 50
Privacy & Cleanup: Call forget_state to purge sensitive or secret states from storage.
- Very specific: line 71
Google Antigravity (
~/.gemini/config/config.json): Add these rules to your "globalPermissionGrants" -> "allow" list: - Very specific: line 75
VS Code / Cursor IDE (
settings.json): Ensure the agent has execution permissions for command(vision-memory-mcp) and read/write access to …
≈ “Common” is an estimate: at least 1 in 5 of the 26,980 CLAUDE.md files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
State Memory (state-memory-mcp)
This project tracks workflow state, tasks, design decisions, and blockers using state-memory-mcp with project slug "spc".
1. Priority Order
Before doing any coding or investigation:
manage_sessions(action: "start")— Start a tracking session for full change attribution.get_analytics(action: "summary")— Run to understand current project state, active branches, and overall progress.manage_tasks(action: "next")— Query prioritized runnable tasks.manage_tasks(action: "find_blockers")— Identify any active blockers preventing progress.manage_nodes(action: "list")— Find pending tasks, past decisions, or milestones.query_graph(action: "trace")— Trace what depends on or blocks a task.
2. When to Write to the Graph
You MUST update the graph as you work:
- Starting a session: Always call
manage_sessions(action: "start", agent_id: "my-agent")to track all mutations under a unique session. - Starting a new task: Create a node with
manage_nodes(action: "create", type: "task", title: "...", session_id: session_id). - Making a design or implementation decision: Document it with
manage_nodes(action: "create", type: "decision", title: "...", metadata: { "rationale": "..." }, session_id: session_id). - Encountering a blocker: Record the blocker with
manage_nodes(action: "create", type: "blocker", title: "...", session_id: session_id)and connect it usingmanage_edges(action: "add", type: "blocks", source_id: blocker_id, target_id: task_id, session_id: session_id). - Adding observation notes: Atomically log notes using
manage_nodes(action: "add_note", text: "...", attach_to: node_id). - Batch updates: Bulk update tasks/nodes using
manage_nodes(action: "batch_update", ids: ["..."], status: "done"). - Completing a task: Update status to done using
manage_tasks(action: "complete", task_id: task_id)ormanage_nodes(action: "update", id: task_id, status: "done"). - Creating/generating a new file: Create an artifact node with
manage_nodes(action: "create", type: "artifact", title: "...", session_id: session_id)and connect it usingmanage_edges(action: "add", type: "produces", source_id: task_id, target_id: artifact_id).
3. Workflow Pattern
- Start of session: Call
manage_sessions(action: "start")to align and track work, then runget_analytics(action: "summary"),manage_tasks(action: "next"), andmanage_tasks(action: "find_blockers"). - Task decomposition: Decompose user requests into tasks and add them to the graph.
- Execution: Mark tasks as "in_progress", document design decisions as they occur, and log blockers if you hit any obstacles.
- Validation & Resolution: Run
run_diagnostics(action: "validate")to ensure no cycles/orphans/contradictions, mark tasks as "done", document completed artifacts, and resolve blockers. Callmanage_sessions(action: "end")to finalize.
4. Codebase Seeding on Initialization
If the project was just initialized or is missing high-level structure (Plans, Milestones, Decisions):
- Inspect the Codebase: Read the README and core files to understand the roadmap and architecture.
- Scaffold the Roadmap: Create a
plannode (e.g., "Project Roadmap") and addmilestonenodes representing key target phases, connecting them usingpart_ofedges. - Scaffold Architecture: Create
decisionnodes representing core technical choices (e.g., choice of databases, frameworks) and link them to the milestones/tasks usingdecided_inedges.
<!-- vision-memory-mcp:start -->Visual Memory (vision-memory-mcp)
This project utilizes vision-memory-mcp to cache visual states, record layout transitions, provide element grounding, and avoid repetitive LLM vision calls.
1. Mandatory Workflow & Priority
- Orient: Call
get_session_contextto align your visual state context at the start of work. - Search: Call
recall_memory(text/image search) before recreating duplicate UI state paths. - Ingest/Verify: ALWAYS call
analyze_screenshotbefore querying any front-end vision models.- Cache Hit (
is_known: true): Do NOT use vision models; read the returneddescriptionas context and usegrounded_elements(selectors, coordinates) for action target selection. - Cache Miss (
is_known: false): Query your vision model, then runanalyze_screenshotwith both the image and description to seed the cache.
- Cache Hit (
- Action Target Execution: Use
predict_next_actionto retrievegrounded_targethandles (target_selector,target_coords) for deterministic UI clicks and typing. - Transitions: Call
record_outcomeafter every click/type/scroll action to construct navigation paths. - Privacy & Cleanup: Call
forget_stateto purge sensitive or secret states from storage.
2. Tool Reference Summary (15 Core MCP Tools)
analyze_screenshot: Ingest screenshot(s) (single or batch viaitems), lookup cache, return layout description and grounded elements.recall_memory: Search visual memory by description query or base64 image query (read-only).record_outcome: Save UI action execution outcomes, transitions, or log visual blockers (action_type: 'blocker').get_navigation_paths: Find path between states using BFS navigation graph.predict_next_action: Predict best next UI action and target coordinates based on transition success rates and AX tree grounding.compare_states: Compare visual states structurally (has_layout_change) or compare video recordings (video_a_id/video_b_id).get_session_context: Fetch aggregated visual context, recent/frequent states, transitions, cache hit ratios, token savings metrics, and server version info.manage_snapshot: Unified snapshot management (save,diff,export,restore) for visual checkpoints and regression detection.manage_visual_spec: Visual SDD design contract baseline registration (set), live verification (verify), and listing (list).manage_video: Unified video memory operations for ingestion (ingest), semantic search (search), and keyframe timelines (timeline).create_evidence_pack: Create cryptographic, multi-modal evidence pack linking video keyframes, state graph tasks, and visual proof.export_trajectories: Export multimodal visual transitions and joint workflow trajectories (json,llava,qwen2_vl,joint).undo_visual_mutation: Revert accidental state or transition edge ingestions.forget_state: Purge a specific state and vector embedding from storage for privacy.wait_for_visual_state: Poll for target visual state until present or timeout occurs.
3. Agent Permissions & Auto-Run Configuration
To allow cache query and ingestion commands to run automatically without prompting:
- Google Antigravity (
~/.gemini/config/config.json): Add these rules to your"globalPermissionGrants"->"allow"list:"command(vision-memory-mcp)"(Allow running the CLI without parameters prompts)"read_file(.*\\.gemini/antigravity/brain/.*)"(Allow reading captured screenshots)"write_file(.*\\.gemini/antigravity/brain/.*)"(Allow saving visual states)
- VS Code / Cursor IDE (
settings.json): Ensure the agent has execution permissions forcommand(vision-memory-mcp)and read/write access to the workspace's local.vision-memory-mcp/cache directory.
<!-- vision-memory-mcp:end -->Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

