Get the FREE Ultimate OpenClaw Setup Guide →

decision-lens

npx machina-cli add skill JoaoVyttorFelix/lightweight-ai-development-agent-skills/decision-lens --openclaw
Files (1)
SKILL.md
3.2 KB

Decision Lens

Overview

Surface potential decisions early by spotting patterns that may constrain future options. Provide neutral, brief signals only. When a decision is intentionally recorded, it is expected to exist as a standalone decision artefact (one decision per artefact), not as an entry in a shared or append-only file.

Workflow

  1. Discovery first

    • Inspect the repository for existing decision-record conventions (e.g., docs/adr/, architecture decision files, historical patterns).
    • If conventions exist, align to them.
    • If none exist, propose a minimal default (e.g., docs/adr/ with one file per decision) as a suggestion only, and ask for confirmation before creating anything.
  2. Scan for decision signals

    • Changes to public interfaces or APIs
    • Persistent data or schema changes
    • Coupling that constrains future changes
    • Irreversible or long-lived technology choices
    • Avoid flagging stylistic changes, refactors that preserve contracts, or purely local implementation details.
  3. Classify neutrally

    • Describe what appears to be changing.
    • Avoid judging quality or correctness.
    • Avoid recommendations unless asked.
  4. Surface the signal

    • Use phrasing like: “This might be a decision because…”
    • If nothing stands out, say so plainly.
  5. Mode and persistence

    • Ephemeral mode (default): surface the decision signal only; no files are written.
    • Persistent mode (opt-in): draft a minimal decision artefact stub when explicitly requested.
    • Never persist automatically or append decisions to shared logs like DECISIONS.md.
  6. Optional decision artefact prompt

    • If appropriate, suggest capturing the decision in a standalone artefact.
    • Optionally draft a stub with:
      • Context
      • Decision question (not the answer)
    • Default template (use only if no repository format exists):
      • ADR <number>: <title>

      • Context

      • What problem or decision is being addressed?
      • Decision

      • What is the decision being made?
      • Consequences

      • What are the tradeoffs and follow-on effects?
    • The template is a default, not mandatory; align to existing ADR formats when present and do not auto-number.
  7. Stop cleanly

    • Present the decision signal (if any) and why it appears decision-like.
    • If the human explicitly defers recording, acknowledge and stop without revisiting.
    • Pause and await instruction to persist, revise, or discard.
    • Do not follow up or persist state.

Output format

Return a brief advisory assessment with one of:

  • No decision signal detected.
  • Possible decision detected:
    • What appears to be changing.
    • Why this may constrain future work.
    • What trade-off seems implicit (if any).

Optionally include a short ADR stub.

Refusals

Politely refuse requests to:

  • Decide if an ADR is mandatory.
  • Judge correctness or quality.
  • Enforce architecture or approvals.
  • Block execution or merges.
  • Infer intent beyond observable signals.

Tone

Calm, neutral, precise. Advisory only. Prefer false negatives to false positives.

Source

git clone https://github.com/JoaoVyttorFelix/lightweight-ai-development-agent-skills/blob/main/decision-lens/SKILL.mdView on GitHub

Overview

Decision Lens surfaces early signals that a choice is being made in work items, plans, diffs, or docs. It flags potential decisions neutrally without enforcing process, helping teams surface standalone decision artefacts when appropriate.

How This Skill Works

It starts with Discovery to align to repo conventions or propose a minimal default ADR path. It then scans for decision signals such as API or interface changes, schema or data model shifts, and long-lived coupling, while ignoring purely stylistic or local changes. Signals are classified neutrally and surfaced with phrasing like “This might be a decision because…”, in ephemeral mode by default; persistent artefacts are opt-in and not automatic, with an optional ADR stub drafted if appropriate.

When to Use It

  • PRs that modify public interfaces or APIs
  • Changes to persistent data schemas or data models
  • Design docs or planning notes noting tradeoffs or unresolved questions
  • Architectural or technology choices with long-term implications
  • Deciding whether to capture the signal as a standalone ADR or document

Quick Start

  1. Step 1: Scan the item for decision signals (APIs, schemas, coupling, irreversible choices)
  2. Step 2: If a signal exists, surface a neutral statement using the suggested phrasing
  3. Step 3: If persistence is needed, opt-in to draft a minimal ADR stub aligned to repo formats

Best Practices

  • Align with existing decision-record conventions (e.g., ADRs) before surfacing
  • Focus on changes that constrain future options; ignore purely stylistic or local changes
  • Phrase signals neutrally, for example: “This might be a decision because…,” and avoid value judgments
  • Operate in ephemeral mode by default; do not persist automatically
  • Offer an optional ADR stub if a formal artefact is appropriate, including context and the decision question

Example Use Cases

  • A PR introduces a breaking API change that could constrain downstream clients
  • A data migration alters a schema in a way that affects future data access patterns
  • A design document notes tradeoffs between frameworks without a final commitment
  • An irreversible technology choice (e.g., dropping support for a language feature) is proposed
  • A team requests a minimal ADR stub to capture a decision being considered

Frequently Asked Questions

Add this skill to your agents
Sponsor this space

Reach thousands of developers