Signal state
SIGNAL — Agent Skills: terse structured output (tiers, templates, checkpoints), git workflow skills (commit, push, PR, review, ckpt), Karpathy-inspired coding norms. Claude Code, Cursor, Gemini CLI, Codex & other Agent Skills hosts.
npx -y skills add mattbaconz/signal --skill signal-stateAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
One thing to look at
- 10 stars10 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
What its author says it does
Copied from the file, not written here
Continuous disk-backed state engine for the SIGNAL protocol
SKILL.md
1.9 KB, as published. Nobody here has run it
⚡ signal-state
This skill manages the Continuous State Engine for the SIGNAL protocol. It transitions the context window from an ephemeral chat history to a persistent .signal_state.md file on disk.
When to use
- Start of session: Read
.signal_state.mdif it exists. It IS your context. - Significant actions: Update state on sub-task completion, PR merge, or focus shift.
- Trigger:
/signal-state→ refresh file immediately.
How it works
Use write_file or replace to modify .signal_state.md in project root. No scripts required.
Format (.signal_state.md)
YAML frontmatter + 3 blocks: Context, Progress, Next.
---
signal_version: 0.2
boot_mode: BOOT:arch
updated_at: 2026-04-15T15:00:00Z
---
## Context
project=move-validator
stack=node+ts
scope=knight-validation
## Progress
[x] parse files
[x] validate L-shape
[x] validate off-board edge cases
[/] SAN to coord conversion boundary
[ ] write unit tests for SAN parse
## Next
turn_focus=implement SAN string parsing in src/move.ts
Rules for Updating State
- Keep it atomic: The entire file should rarely exceed 30 lines.
- Never store code: The state file tracks pointers to progress, not the code itself.
- Overwrite, don't append: When updating progress, change
[ ]to[x]. Do not just append completed items to an infinitely growing list. - Pruning: If the
Progresslist exceeds 10 items, collapse the completed items[x]into a single summary line:[x] core knight validation (5 tasks).
Bootstrapping a new state
If the user asks to start using continuous state and the file doesn't exist, create it immediately based on the current context of the chat.
# Example action
write_to_file ".signal_state.md" <formatted_state_content>