Back to skills
SkillHub ClubDesign ProductFull StackDesigner

definition-resource-design

Guide for designing Definition resources in OptAIC (the "Law"). Use when creating PipelineDef, StoreDef, AccessorDef, OpDef, MLModuleDef, or PortfolioOptimizerDef. Covers interface_spec, input/output schemas, compatibility rules, and embedded guardrail contracts.

Packaged view

This page reorganizes the original catalog entry around fit, installability, and workflow context first. The original raw source lives below.

Stars
125
Hot score
95
Updated
March 20, 2026
Overall rating
C2.8
Composite score
2.8
Best-practice grade
A92.0

Install command

npx @skill-hub/cli install majiayu000-claude-skill-registry-definition-resource-design

Repository

majiayu000/claude-skill-registry

Skill path: skills/data/definition-resource-design

Guide for designing Definition resources in OptAIC (the "Law"). Use when creating PipelineDef, StoreDef, AccessorDef, OpDef, MLModuleDef, or PortfolioOptimizerDef. Covers interface_spec, input/output schemas, compatibility rules, and embedded guardrail contracts.

Open repository

Best for

Primary workflow: Design Product.

Technical facets: Full Stack, Designer.

Target audience: everyone.

License: Unknown.

Original source

Catalog source: SkillHub Club.

Repository owner: majiayu000.

This is still a mirrored public skill entry. Review the repository before installing into production workflows.

What it helps with

  • Install definition-resource-design into Claude Code, Codex CLI, Gemini CLI, or OpenCode workflows
  • Review https://github.com/majiayu000/claude-skill-registry before adding definition-resource-design to shared team environments
  • Use definition-resource-design for development workflows

Works across

Claude CodeCodex CLIGemini CLIOpenCode

Favorites: 0.

Sub-skills: 0.

Aggregator: No.

Original source / Raw SKILL.md

---
name: definition-resource-design
description: Guide for designing Definition resources in OptAIC (the "Law"). Use when creating PipelineDef, StoreDef, AccessorDef, OpDef, MLModuleDef, or PortfolioOptimizerDef. Covers interface_spec, input/output schemas, compatibility rules, and embedded guardrail contracts.
---

# Definition Resource Design Patterns

Guide for designing Definition resources that serve as reusable plugin templates. Definitions are the "Law" that Instances must follow.

## When to Use

Apply when:
- Creating new plugin types (PipelineDef, StoreDef, etc.)
- Designing the interface contract a plugin must implement
- Specifying input/output schemas for validation
- Defining compatibility rules for upstream/downstream connections
- Embedding guardrail contracts that enforce data quality

## Core Concept: The Law

Definition resources contain the rules that Instance resources must follow:

```
Definition = The Law
├── interface_spec        # Abstract interface to implement
├── input_schema          # Expected input format
├── output_schema         # Expected output format
├── compatibility_rules   # What can connect upstream/downstream
└── guardrail_contracts   # Validation rules (enforced by Engine)
```

## Definition Types

| Type | Purpose | Example Implementations |
|------|---------|------------------------|
| `PipelineDef` | Data ingestion/transform | BloombergPipeline, FREDPipeline, ExpressionPipeline |
| `StoreDef` | Storage backend | ParquetStore, SQLiteStore, VirtualStore |
| `AccessorDef` | Data access pattern | SimpleAccessor, PITAccessor, FieldAccessor |
| `OpDef` | Mathematical operator | REF, DELTA, MEAN, CORR, RANK |
| `OpMacroDef` | Saved expression | User-defined formulas |
| `MLModuleDef` | ML model template | XGBoostModule, LSTMModule |
| `PortfolioOptimizerDef` | Optimization algo | MVO, HRP, BlackLitterman, RiskParity |

## Schema Structure

See [references/schema-structure.md](references/schema-structure.md) for complete JSON schema.

### Minimal Definition

```python
definition_metadata = {
    "interface_spec": "optaic.interfaces.BasePipeline",
    "input_schema": {"datasets": {"type": "array"}},
    "output_schema": {"type": "DataFrame", "columns": ["date", "entity", "value"]},
}
```

### Full Definition with Contracts

```python
definition_metadata = {
    "interface_spec": "optaic.interfaces.SignalPipeline",
    "version": "1.0",

    "input_schema": {
        "datasets": {"type": "array", "items": {"$ref": "#/DatasetInstance"}},
        "parameters": {"type": "object", "properties": {...}}
    },

    "output_schema": {
        "type": "DataFrame",
        "columns": ["date", "entity", "value"],
        "value_range": {"min": -1, "max": 1}
    },

    "compatibility_rules": {
        "upstream_types": ["DatasetInstance"],
        "downstream_types": ["SignalInstance", "BacktestInstance"]
    },

    "guardrail_contracts": [
        {"kind": "signal.bounds", "config": {"min": -1, "max": 1, "allow_nan": False}},
        {"kind": "pit.policy", "config": {"knowledge_date_required": True}},
    ]
}
```

## Implementation Checklist

1. [ ] Define `interface_spec` pointing to abstract base class
2. [ ] Specify `input_schema` with JSON Schema format
3. [ ] Specify `output_schema` with expected structure
4. [ ] Define `compatibility_rules` for resource graph connections
5. [ ] Embed `guardrail_contracts` for validation
6. [ ] Create extension table in `libs/db/models/`
7. [ ] Add to `ResourceType` enum

## Reference Files

- [Schema Structure](references/schema-structure.md) - Complete JSON schema spec
- [Examples](references/examples.md) - Example Definition implementations
definition-resource-design | SkillHub