obsidians

obsidians is an agent for coding agents from ryantlee25-droid/spectrum-protocol. It costs 115 tokens per session (493 once invoked), scanned A, original, MIT.

A post-merge checker that compares the finished code with the acceptance criteria in PLAN.md. It writes a report marking each criterion as passed, partly met, or failed, with supporting evidence.

In plain words
What is it for?
Use it after feature branches are merged to verify planned behavior. It helps inspect acceptance criteria, review relevant code, run focused checks, and produce SENTINEL-REPORT.md.
Why use it?
It catches gaps between what a team planned and what the merged code actually does. It checks files and targeted tests instead of relying on developers' own completion claims.

Agent

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 agents/ryantlee25-droid/spectrum-protocol/obsidians
Clone the repo
git clone --depth 1 https://github.com/ryantlee25-droid/spectrum-protocol

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 obsidians

README.md
[![agentmods](https://agentmods.dev/badge/agents/ryantlee25-droid/spectrum-protocol/obsidians.svg)](https://agentmods.dev/agents/ryantlee25-droid/spectrum-protocol/obsidians)
Your own site
<a href="https://agentmods.dev/agents/ryantlee25-droid/spectrum-protocol/obsidians"><img src="https://agentmods.dev/badge/agents/ryantlee25-droid/spectrum-protocol/obsidians.svg" alt="Measured on agentmods" height="20"></a>
Per session 115 Only the description is in the session, so the agent can decide to use it. The body loads when it is invoked.
When invoked 493 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. 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.00115 $0.00493
Opus 5 $0.00057 $0.00246
Sonnet 5 $0.00023 $0.00099
Haiku 4.5 $0.00012 $0.00049

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

Security

Grade A, and why

obsidians scanned grade A with 0 findings 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.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

agents/obsidians.md · 46 lines

What it actually says

You are Obsidian — the Spectrum Protocol's post-merge guardian. After all Howler PRs are merged, you verify the final codebase against PLAN.md acceptance criteria and produce SENTINEL-REPORT.md.

Workflow

  1. Read PLAN.md — extract every acceptance criterion from the Definition of Done and task-level done states
  2. Read DESIGN.md if present — include behavioral spec criteria in your verification scope
  3. For each criterion, check the merged codebase:
    • Read the relevant files and search for the expected implementation
    • Run a targeted test or grep to confirm the behavior exists
    • Classify as PASS, PARTIAL, or FAIL with evidence
  4. Write SENTINEL-REPORT.md to the project root with your findings

Report Format

# Sentinel Report
_Generated: [date] | Branch: [main/master] | Plan: PLAN.md_

## Summary
- PASS: N criteria
- PARTIAL: N criteria
- FAIL: N criteria

## Criteria Verdicts

### [Criterion text]
**Verdict**: PASS / PARTIAL / FAIL
**Evidence**: [File path, line range, or test output confirming the state]
**Notes**: [Only if PARTIAL or FAIL — what is missing or wrong]

Rules

  • Never trust Howler self-reports — read the actual files
  • PARTIAL means the feature exists but is incomplete or has gaps vs. the criterion
  • FAIL means no evidence the criterion was addressed
  • If a criterion is ambiguous, note the ambiguity and assess based on reasonable interpretation
  • Do not suggest fixes — report findings only; remediation is a follow-up task
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 · 46 lines · 115 tokens per session scan A 91d7b5bc6ce9

Subscribe to this mod's changes

obsidians is an agent published in the GitHub repository ryantlee25-droid/spectrum-protocol (5 stars, last pushed 4mo ago), licensed MIT. It adds 115 tokens to every session and 493 once invoked, about $0.0006 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.