decision-log

decision-log is a skill for Claude Code from okeefeco/pyeye-mcp. It costs 133 tokens per session (1,918 once invoked), scanned A, original, MIT.

A project decision log for recording why important, friction-driven changes were made when they affect a public interface or a rule the code must preserve. It stores short notes with references and verifiable checks.

In plain words
What is it for?
Use it at the commit checkpoint, or when asked to record a decision, for contract-changing or invariant-changing work caused by a concrete problem or obstacle.
Why use it?
The reasoning behind a significant change can disappear after the code is merged. This preserves the decision in a form future developers can verify.

Skill for Claude Code

Written for Claude Code: shipped in a Claude Code plugin.

Part of the pyeye plugin — 5 skills, 2 agents, 1 hook, 1 MCP server shipped together

Good fit Use it at the commit checkpoint, or when asked to record a decision, for contract-changing or invariant-changing work caused by a concrete problem or obstacle.

Compare 6 skills from other repositories ↓
Install with agentmods
npx agentmods add skills/okeefeco/pyeye-mcp/decision-log
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.

Any agent
npx skills add okeefeco/pyeye-mcp --skill decision-log
Clone the repo
git clone --depth 1 https://github.com/okeefeco/pyeye-mcp

Made for: Claude Code.

Or install pyeye, the plugin that ships this one along with the rest of its 5 skills, 2 agents, 1 hook, 1 MCP server.

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 decision-log

README.md
[![agentmods](https://agentmods.dev/badge/skills/okeefeco/pyeye-mcp/decision-log.svg)](https://agentmods.dev/skills/okeefeco/pyeye-mcp/decision-log)
Your own site
<a href="https://agentmods.dev/skills/okeefeco/pyeye-mcp/decision-log"><img src="https://agentmods.dev/badge/skills/okeefeco/pyeye-mcp/decision-log.svg" alt="Measured on agentmods" height="20"></a>
Per session 133 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 1,918 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe.
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.1 $0.00133 $0.01918
Opus 5 $0.00067 $0.00959
Sonnet 5 $0.00027 $0.00384
Haiku 4.5 $0.00013 $0.00192

Measured 7d ago against content hash 38d74c73a839, method: parsed. Prices are Anthropic first-party input rates as of 2026-09-07, from the pricing page.

Security

Grade A, and why

decision-log 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 7d 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.

skills/decision-log/SKILL.md · 144 lines

How it starts

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

Decision Log

Capture the why of contract-significant, friction-driven changes as small, verifiable notes — before the reasoning evaporates into the diff. Each entry is forward-compatible with a future trust-layer / architecture-fact checker that re-runs the Verify lines.

This habit must survive deadlines. It optimises for low friction and honest, checkable facts over completeness. Capturing a high-signal subset reliably beats capturing everything and rotting (the ADR graveyard).

Skill Type: Mixed Rigid/Flexible

Rigid gates (non-negotiable):

  • Propose in ONE line; never write the entry before the user confirms.
  • Never nag — if the user declines, drop it silently and continue.
  • Verify MUST be honestly tiered (gold / partial / unverifiable) — never a vague "looks right".
  • Anchor MUST use stable references (symbol names, #issue/PR, commit-pinned permalinks) — NEVER a bare file:line.
  • Never fabricate the date.

Flexible path (use judgement):

  • Whether a given diff is genuinely "contract-significant" (when unsure, do NOT propose — false positives train the user to ignore you, which kills the habit).
  • How to phrase Friction/Decision concisely.
  • Which verification mechanism fits (test, pyeye query, grep, import-linter contract, human review).

When This Fires

Primary trigger — the commit checkpoint. When a commit is being prepared and the staged diff touches a contract surface, propose ONE decision note before finalising. Contract surfaces:

  • a public/exported signature changed (params, return, raises)
  • a documented invariant or guarantee (e.g. "never raises", "pure consumer", "absence ≠ zero")
  • a predicate / schema / config contract (a new key, a changed default)
  • an edge / API contract (what a tool returns, a discriminated-union branch)
  • a non-obvious "why we did it this way" decided in the working conversation

Secondary trigger — on demand. The user says "log this decision" (or similar), commit or not.

Do NOT Trigger When

Read the full file on GitHub · 144 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. 7d ago First seen · 144 lines · 133 tokens per session scan A 38d74c73a839

Subscribe to this mod's changes

decision-log is a skill published in the GitHub repository okeefeco/pyeye-mcp (0 stars, last pushed 6d ago), licensed MIT. It adds 133 tokens to every session and 1,918 once invoked, about $0.0007 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.

Related

Other skills, from other repositories

daily-briefing

Start your day with a prioritized CRM briefing — works for any monday CRM setup: pipeline, contacts, accounts, leads, or no board at all. Use when someone says 'morning briefing', 'daily brief', 'what's on my plate today', 'catch me up on my deals', 'what needs attention', 'what needs my attention', 'anything urgent…

mondaycom/mcp · 106 tokens

meeting-to-deal

Turn meeting transcripts into deal updates — key points, commitments, and next steps posted to matching CRM deals automatically. Auto-creates contacts for new attendees. Use when someone says "log my meetings to deals", "update CRM from calls", "what did I commit to in meetings", "sync notetaker", "log this meeting"…

mondaycom/mcp · 107 tokens

log-activity

Log calls, meetings, notes, and other activities to CRM item timelines — structured records with attendees, outcomes, and follow-ups. Use when someone says "log my call with", "add a note to the deal", "what activities happened on", "record this meeting", "update my note on", "track a call with", "log a meeting with"…

mondaycom/mcp · 111 tokens

Technical Debt Tracking with PMAT

Tracks and manages technical debt using PMAT (Pragmatic AI Labs MCP Agent Toolkit). Use this skill when: User asks about technical debt, TODO comments, or code quality issues Planning sprint work and need to prioritize debt repayment Conducting code audits or technical debt assessments Tracking debt accumulation…

paiml/paiml-mcp-agent-toolkit · 123 tokens

pipefy-process-design

Use this skill ONLY when the user explicitly asks for help designing or architecting a process ("help me design", "what's the best structure", "how do I organize this flow?"). For direct execution requests ("create a pipe for X", "build a reimbursement process", or any message with a detailed spec), skip this skill…

pipefy/ai-toolkit · 89 tokens

pipefy-members-email-webhooks

Use this skill when the user wants to manage pipe membership, send or read card inbox emails, use email templates, or manage webhooks. Covers 12 MCP tools.

pipefy/ai-toolkit · 41 tokens