Omh Decision Prototype logo

Omh Decision Prototype

CommunityPopular
rlaope
omh-decision-prototype

[omh] Bounded decision prototype workflow: resolve one uncertain interaction, API, performance, or integration choice with a disposable, isolated experiment whose observed result feeds planning. Use when the user says: decision-prototype, decision prototype, prototype this uncertain choice before planning, prototype before planning, prototype the uncertain choice, run a small spike, small spike, spike solution.

Overview

Publisherrlaope
Repositoryoh-my-hermes
Skill nameomh-decision-prototype
Stars
2.7K
Forks
194
Bundled files
1
LicenseMIT
Links
  • Markdown instructions

    A SKILL.md file the model loads on demand, so it only costs tokens when a request actually matches.

  • Works with any LLM

    AI skills are plain Markdown, not provider-specific code, so this works with GPT, Claude, Gemini, Grok, or a local model.

  • 1 bundled files

    Scripts, templates, and references the model can read while it works. Files are read-only and never executed.

  • Open source

    Published by rlaope on GitHub. Read the source before you install it.

Installation

Install the Omh Decision Prototype AI skill in TypingMind to use it with any LLM, or drop it into another agent that reads SKILL.md.

1

Install in TypingMind

TypingMind installs a skill straight from its GitHub folder — it reads SKILL.md, bundles the resource files, and stores the result locally.

  1. Open the app and go to Plugins → Skills.
  2. Choose "Install from GitHub".
  3. Paste the skill folder URL below and confirm.
  4. Enable the skill in any chat where you want it available.
Plugins → Skills → Add skill → From GitHub URL, then paste the folder URL and press Continue.
2

Install in another agent

Any agent that reads the Agent Skills format can use this skill — copy the folder into that agent's skills directory.

Claude Code — .claude/skills
git clone --depth 1 https://github.com/rlaope/oh-my-hermes.git /tmp/oh-my-hermes
mkdir -p .claude/skills
cp -r /tmp/oh-my-hermes/agent-skills/omh-decision-prototype .claude/skills/omh-decision-prototype
Restart Claude Code after copying so it picks up the new skill.

Use it in TypingMind

Enable Omh Decision Prototype in any TypingMind chat and the model takes it from there. Its name and description sit in the system prompt, and the moment a request matches, the model loads the full instructions itself — you never invoke it by hand, and it costs no tokens until it is actually used.

The model loads Omh Decision Prototype on its own as soon as a request matches it.

Works with any AI model

AI skills are plain Markdown instructions rather than provider-specific code, so Omh Decision Prototype is not tied to the model it was written for. Install it once in TypingMind and use it with GPT-5, Claude, Gemini, Grok, DeepSeek, Mistral, Llama, or a local model you run yourself — all on your own API keys.

  • Loaded only when it is needed

    The system prompt carries just the name and description. The instructions are fetched on the first matching request, so an idle skill costs nothing.

  • Switch models mid-chat

    Because the skill is instructions rather than code, changing model does not break it — the next model reads the same SKILL.md.

Skill instructions

This is the SKILL.md content the model loads. Read it before installing — a skill is instructions your model will follow.

Decision Prototype

This is an OMH decision-prototype workflow skill, projected for Agent Skills hosts (Claude Code, Codex, Cursor, opencode, OpenClaw, pi).

Why This Exists

decision-prototype exists so one empirical uncertainty can be settled by a bounded, disposable experiment instead of endless interviewing or an experiment hidden inside production work; it records observed results apart from interpretation and feeds planning a receipt without claiming the prototype is implementation-ready.

Do Not Use When

  • $context is the explicit-only route for a repository terminology or product decision frontier (context); preference or policy decisions that behavior cannot test stay with deep-interview.
  • $context is the explicit-only route for unresolved repository terminology or project language (context); hand only an empirical decision here.
  • The decision is already made and the request is an implementation plan with acceptance criteria; use ralplan and consume the decision receipt there.
  • The user wants the feature built, reviewed, or shipped rather than one question answered; use ultrawork after an accepted plan.
  • The request is UI creation, redesign, or polish of a real surface rather than a throwaway wireframe that answers one interaction question; use frontend.
  • The request is a premium content, layout, or visual quality gate on deliverables; use design-quality-gate.
  • The uncertainty is whether customers have the problem or would adopt the solution, which needs customer evidence rather than a technical or interaction spike; use product-discovery-validation.
  • The request needs QA certification, production-readiness evidence, or a performance baseline for release; prototype results do not generalize beyond their declared fixture and environment.

Examples

Good example:

  • Prompt: Run a small spike to check whether the streaming API can hold 500 concurrent connections on one worker before we plan the migration.
  • Expected behavior: Frame one decision question with a stable id, bound the budget and scratch worktree, prepare a timing probe with exact commands and expected observations, record only observed results, and close with a decision receipt for planning.
  • Why: One empirical uncertainty blocks planning and a cheap, reversible, isolated probe can answer it without building the migration.

Bad example:

  • Prompt: decision-prototype build the whole notifications feature as a prototype and merge it if it works.
  • Expected behavior: Refuse the multi-feature scope, ask for the one decision the prototype should settle, and route accepted implementation to ralplan then ultrawork.
  • Why: A general feature build is not a bounded experiment, and a successful prototype is never promoted without a separate accepted plan.

Completion Checklist

  • Exactly one decision question with a stable decision id, alternatives, and a falsifiable hypothesis is recorded, or the request was refused with the missing question named.
  • Time, tool, file, and command budgets carry units, and the scratch directory or temporary worktree identity matches the observed workspace.
  • The artifact kind is the smallest that can answer the question, and any expansion into feature implementation was refused.
  • Execution status is one of prepared_not_observed, observed, timeout, or inconclusive; observed outputs, evidence references, interpretation, and confidence sit in separate fields.
  • Cleanup is observed before discarded is reported, and a cleanup failure is recorded distinctly.
  • The decision receipt names the supported option, rejected option, residual risk, evidence limits, and prototype-code reference permission, and no implementation handoff was prepared from it.

Recovery Notes

  • If the request spans several decisions or has no falsifiable hypothesis, HOLD and ask for or derive the single question instead of running anything.
  • If no executor, temporary worktree, browser tool, or device is available, emit the prepared handoff with exact commands and expected observations and report every result as unobserved.
  • If the observed workspace differs from the declared scratch boundary, stop before the first write and report the mismatch as a blocker.
  • If the time or command budget runs out, record timeout with whatever was observed so far and leave interpretation as unresolved questions.
  • If observations do not falsify or support the hypothesis, record inconclusive with the evidence limits rather than choosing an option.
  • If cleanup fails, keep the artifact at its last observed cleanup state, name the residual scratch identity, and never report discarded.
  • If the user asks to ship the prototype, summarize the receipt and route to ralplan; promotion needs an accepted plan and its own implementation handoff.

Use When

Use when discussion cannot settle one interaction, API, performance, or integration choice and a cheap reversible experiment can answer it before planning; refuse unbounded or multi-feature experiments and ask for or derive one falsifiable decision question.

Strong routing signals: `decision-prototype`, `$decision-prototype`, `decision prototype`, `prototype this uncertain choice before planning`, `prototype before planning`, `prototype the uncertain choice`, `run a small spike`, `small spike`, `spike solution`, `decision spike`, `feasibility spike`, `test the risky assumption first`, `test the risky assumption`, `throwaway prototype`, `disposable prototype`, `timing probe`, `api probe`

Catalog Metadata

Category: planning Phase: decision-prototype Quality tier: decision-gated Reasoning demand: standard

Quality bar:

  • Name the decision id, question, alternatives, hypothesis, budget, scratch boundary, measurement method, and stop conditions before any command is prepared.
  • Select the smallest artifact that can answer the question and state why a larger one was not needed.
  • Separate prepared handoff, observed outputs, interpretation, confidence, and cleanup state as distinct evidence states.
  • Preserve the declared task, fixture, environment, and sample limits so the result is not generalized beyond them.
  • End with a decision receipt that ralplan can consume: supported option, rejected option, residual risk, evidence limits, and prototype-code reference permission.

Required inputs:

  • decision question
  • experiment budget
  • scratch boundary
  • measurement method

Expert clarification questions:

  • decision question
    • English: Which single decision should this prototype settle, which alternatives are in play, and what observable result would falsify the preferred option?
    • Korean: 이 프로토타입으로 결정할 단일 의사결정은 무엇이고, 어떤 대안들이 있으며, 어떤 관찰 결과가 나오면 선호 옵션이 틀렸다고 볼 수 있나요?

Expected outputs:

  • decision_prototype/v1
  • prepared prototype handoff with exact commands and expected observations
  • observation ledger separating observed outputs from interpretation and confidence
  • decision receipt for planning with supported option, rejected option, residual risk, and evidence limits

Artifact expectations:

  • prepared decision_prototype/v1 record when a wrapper captures it: decision id and question, alternatives, hypothesis, target user or task, time/tool/file/command budget, executor or runtime and capability limits, scratch workspace identity, measurement method, stop conditions, observed results, interpretation, confidence, unresolved questions, keep or discard decision, and cleanup status
  • prepared prototype handoff carrying exact commands and expected observations; it stays prepared_not_observed until a separate observation records outputs
  • declared scratch workspace identity compatible with the existing worktree_session_isolation/v1 guidance when a temporary worktree is used
  • metadata-only evidence references for executed runs; raw outputs, secrets, user data, and transcripts stay out of the record

Safety rules:

  • Refuse an experiment that answers more than one decision question or has no falsifiable hypothesis; ask for or derive one question before spending budget.
  • Read existing production files freely, but write only inside the declared scratch directory or temporary worktree unless the user explicitly approves a different boundary.
  • Do not manufacture results: without an available executor the output is a prepared handoff and every result field reads unobserved.
  • Executor or tool success is not product validation; keep measured observations, assumptions, and derived interpretation in separate fields.
  • Use synthetic fixtures by default and keep secrets and user data out of the record; preserve only bounded metadata and safe evidence references.
  • Destructive experiments, paid services, external publication, and irreversible side effects require the existing authority and approval gates before any command runs.
  • No prototype code enters a production branch or implementation handoff without a separate accepted plan; the receipt only states whether prototype code may be referenced.
  • Report discarded only after cleanup is observed; a failed or pending cleanup stays visible in the artifact.

Procedure: load references/procedure.md.

Runtime Evidence

Use the current host's own tools and subagent/task mechanism when available; otherwise run the same lanes sequentially or name the unavailable capability. A prepared plan, handoff, checklist, or skill installation is not execution, review, CI, merge-readiness, or merge evidence. Report actual tool results or not_observed / not_available; never invent dispatch or host accounting. Treat supplied context as advisory, not proof of hidden memory reads or writes. State scope, constraints, verification, and the stop condition before work. Supporting paths are relative to this skill directory; sibling skill paths are relative to its parent. Resolve them from the host-provided skill base directory ({baseDir} on hosts that provide it), never a hardcoded install location. A named workflow not installed here is unavailable, not permission to emulate its host-specific capabilities. Verify through the real surface before done.

Bundled files

The model reads these on demand while the skill is loaded. They are exposed as readable files and are never executed.

Frequently asked questions

What does the Omh Decision Prototype AI skill do?

[omh] Bounded decision prototype workflow: resolve one uncertain interaction, API, performance, or integration choice with a disposable, isolated experiment whose observed result feeds planning. Use when the user says: decision-prototype, decision prototype, prototype this uncertain choice before planning, prototype before planning, prototype the uncertain choice, run a small spike, small spike, spike solution.

Why use Omh Decision Prototype on TypingMind?

Because you install it once and use it with any model. Omh Decision Prototype is plain Markdown rather than provider-specific code, so the same skill runs on GPT-5, Claude, Gemini, Grok, or a local model — and you can switch model mid-chat without it breaking. TypingMind runs on your own API keys, so you pay providers directly instead of a per-seat subscription, and your skills and chats stay in your own storage.

How do I install Omh Decision Prototype in TypingMind?

Open Plugins → Skills → Install from GitHub in TypingMind and paste https://github.com/rlaope/oh-my-hermes/tree/main/agent-skills/omh-decision-prototype. TypingMind reads its SKILL.md and bundles its files and installs it as a skill you can enable per chat.

Which AI models can use Omh Decision Prototype?

Any model you connect in TypingMind. AI skills are plain Markdown instructions rather than provider-specific code, so GPT, Claude, Gemini, Grok, and local models can all load this skill when a request matches it.

How many AI models can I use with Omh Decision Prototype?

As many as you like. As long as a model supports skills, you can use Omh Decision Prototype with it — GPT, Claude, Gemini, Grok, DeepSeek, Mistral, Llama and more — all on TypingMind with your own API keys.

Is the Omh Decision Prototype AI skill free?

Yes. It is published on GitHub by rlaope under the MIT license. You only pay your own AI provider for the tokens you use.

What are AI skills?

An AI skill is a reusable instruction bundle that teaches an AI model how to do one specific task. It follows the open Agent Skills format: a SKILL.md file with a name and description, plus any scripts, templates or reference files the model may need. The model reads the instructions only when your request matches the skill, so an installed skill costs nothing until it is used.

How are AI skills different from plugins or MCP servers?

A plugin or MCP server gives a model new tools to call — code that runs somewhere and returns a result. An AI skill gives the model knowledge and process instead: how to approach a task, which steps to follow, what good output looks like. Skills are plain Markdown, so they need no server, no API key and no runtime, and they work with any model.

View all

Set up your own AI workspace now

Get notified about new features and future giveaways by subscribing to our newsletter 👇