Mino Design By Contract logo

Mino Design By Contract

Community
my-take-dev
mino-design-by-contract

自然言語の要件を事前条件・事後条件・不変条件・失敗保証とcondition単位の保証責任・契約テストへ変換するときに使う。UI入力検証だけ、一般テスト追加、業務実装全体には使わない。

Overview

Publishermy-take-dev
Repositoryinspired-mino-design-skills
Skill namemino-design-by-contract
Stars
345
Forks
9
Bundled files
2
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.

  • 2 bundled files

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

  • Open source

    Published by my-take-dev on GitHub. Read the source before you install it.

Installation

Install the Mino Design By Contract 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.
    https://github.com/my-take-dev/inspired-mino-design-skills/tree/main/.agents/skills/mino-design-by-contract
  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/my-take-dev/inspired-mino-design-skills.git /tmp/inspired-mino-design-skills
mkdir -p .claude/skills
cp -r /tmp/inspired-mino-design-skills/.agents/skills/mino-design-by-contract .claude/skills/mino-design-by-contract
Restart Claude Code after copying so it picks up the new skill.

Use it in TypingMind

Enable Mino Design By Contract 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 Mino Design By Contract 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 Mino Design By Contract 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.

Design by Contract

Outcome Contract

要件を観測可能な条件、条件ごとの保証責任、失敗後状態、誤実装を識別できる契約testへ変換する。implementationは依頼された契約testを作成・実行する。 正本packageのrootはcontract_package。 対応mode: design, review, implementation。

Reference Routing

  • 初回はskills/mino-core/references/shared-policies.mdを読み、Evidence・承認・判定を適用する。同じcontextで既読なら再読しない。通常の判断は本体とこの共通規則で行う。
  • 既存挙動・公開契約を変更するときはskills/mino-core/references/change-safety.mdを読み、baseline・変更step・復旧条件を作る。
  • 対象systemのfile/process/test実行・複数OS要件がある場合はskills/mino-core/references/platform-compatibility.mdを読み、host・対象・検証層を分ける。単なる回答記録の保存では追加読込しない。
  • 正本packageの作成・更新・引継ぎを依頼された場合だけskills/mino-design-by-contract/schemas/package.mdを読み、必須fieldと実在参照を保持する。

Workflow

  1. 要件、model、既存契約、code/test、obligationを使い、変更をmust-preserve / intentional-change / unknownへ分ける。未提供の全artifactを着手条件にせず、確定できる契約と未決を分ける。
  2. 公開operationのcontract_ownerと、各conditionを保証するauthoritative ownerを区別する。一つの観測可能なconditionに一つのCI IDを付ける。
  3. preはcallerの呼出条件、postは成功時保証、invariantは有効modelで常時成立する条件、environmentは外部・clock・OS条件、failure_guaranteeは失敗後のdomain/persisted stateと外部副作用の保証として分類する。無効入力への公開応答はpreだけでなくfailure contractも持つ。
  4. 各条件をrequired / not_applicable / unknownへ分ける。requiredはstatement、level、authority、一意なauthoritative owner、Evidenceを持つ。値の意味・範囲、内部整合、認可・副作用順、wire互換、永続一意性を実際に保証できる責務へ置く。UIの早期validationや言語の型名で別writerからの保証を代替しない。
  5. business/technical failure、外部成功/内部失敗、順序逆転、並行更新、cancel、timeout、曖昧結果をscopeに合わせて扱う。失敗後に何が残るか、retry可否、duplicate結果、idempotencyを個別判定する。operationごとのassessmentを作り、必要な意味だけCIへ定義する。keyは根拠がある場合のみ。pure functionの決定性と副作用の冪等性を混同しない。
  6. testのverifiesを実在するrequired CIへ接続する。境界直前/値/直後、禁止遷移、失敗後不変、該当するretry/concurrencyをoracleで識別する。既存testを再利用でき、一つのtestが複数CIを検証してよい。
  7. 要件coverage、required CIの定義充足、oracle付きtestの設計coverage、required platformでの実行成功を別に数える。未知CIを別に保持し、比率だけで充足を宣言しない。designはplanned / not_runとする。

Hard Gates

  • N/Aは理由とEvidence、unknownは確認方法と影響を持つ。N/A/unknownへ空のdefensive entryやmechanismを追加しない。
  • 契約testが業務実装の欠陥で失敗してもoracleを変えない。test変更だけの依頼なら失敗Evidenceと修正obligationを返す。業務修正も許可済みのrootなら統合へ一度引き継ぎ、scoped childはcallerへ返す。
  • 公開変更・移行がある場合だけ互換性window、承認、移行、復旧を持つ。局所test変更へ移行を必須化しない。

Completion

必要条件・失敗保証・oracleが揃えばsufficient、既知gapがあればinsufficient、重要未確認ならindeterminate。現在の契約成果物の完成と対象の不足を分ける。不足に依存する実装はnext_phaseで止める。

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 Mino Design By Contract AI skill do?

自然言語の要件を事前条件・事後条件・不変条件・失敗保証とcondition単位の保証責任・契約テストへ変換するときに使う。UI入力検証だけ、一般テスト追加、業務実装全体には使わない。

Why use Mino Design By Contract on TypingMind?

Because you install it once and use it with any model. Mino Design By Contract 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 Mino Design By Contract in TypingMind?

Open Plugins → Skills → Install from GitHub in TypingMind and paste https://github.com/my-take-dev/inspired-mino-design-skills/tree/main/.agents/skills/mino-design-by-contract. 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 Mino Design By Contract?

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 Mino Design By Contract?

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

Is the Mino Design By Contract AI skill free?

It is published on GitHub by my-take-dev. Check the repository for licensing terms. 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 👇