Skip to main content

SCS - AI Capability Compiler. Turn scattered skills into verified, executable pipelines.

Project description

SCS — Skill Compiler System

中文版

Turn scattered skills into reliable workflows

You've collected many skill files. But when it's time to actually use them:

  • "Which ones do I need for this task?"
  • "Can they chain together? Or will it break halfway?"
  • "Why do I have to manually piece them together, with no way to know if it will work?"

The core problem: Skills are defined separately, but they need to work together. Nobody builds the bridges.


Core Concepts

Before diving in, understand these 3 key concepts:

What is a Skill?

A Skill is a reusable capability definition. Think of it as a "function" in programming:

Skill: "Write PRD"
  - Input: User requirements (raw text)
  - Output: PRD document (structured)
  - Description: How to transform user input into a formal PRD

Each skill is a .md file in your agent's skills directory, defining what it does, what it needs, and what it produces.

What is an Artifact?

An Artifact is the "data" that flows between skills — the input and output of each step.

[User Requirements] → Skill: Write PRD → [PRD Document] → Skill: Review PRD → [Validated PRD]

Artifacts have types (like PRDDocument, SourceCode, TestReport). SCS uses these types to match skills together — if skill A outputs PRDDocument and skill B takes PRDDocument as input, they can connect.

Think of artifacts as typed variables that skills pass around.

What is an Execution Plan (DAG)?

An Execution Plan is a verified, step-by-step workflow. SCS generates these by:

  1. Finding skills that can chain together (matching artifact types)
  2. Ordering them correctly (inputs ready before outputs needed)
  3. Checking feasibility (no circular dependencies, no missing inputs)
  4. Showing you the full path before execution

It's like Terraform Plan — preview with validation, before you commit.


Supported AI Agents

SCS works with these AI coding assistants:

Agent Skills Directory How SCS Connects
Claude Code ~/.claude/commands/ MCP tools + Router skill
Cursor ~/.cursor/rules/ MCP tools + Router skill
Windsurf .windsurf/rules/ MCP tools + Router skill
Cline .clinerules/ MCP tools + Router skill

Key point: SCS discovers skills from all installed agents, but each agent can only invoke skills in its own directory. If the recommended skill comes from another agent, you'll need to copy it or install that agent.


One-Click Install

Via PyPI (Recommended)

pip install scs-mcp

Then install to your agent:

# Install to Claude Code
scs install --agent claude_code

# Install to all supported agents
scs install --all

# Install to specific agent
scs install --agent cursor
scs install --agent windsurf
scs install --agent cline

What gets installed:

  1. 8 MCP tools — available in your agent's tool palette
  2. SCS Router skill — guides your agent when to use SCS

After installation, restart your agent.

Via GitHub

git clone https://github.com/lonyness/Skill-Compiler-System.git
cd Skill-Compiler-System
pip install -e .
scs install --agent claude_code

5-Minute Quick Start

Step 1: Initialize SCS

In your AI agent, call:

scs_init()

SCS scans all skills across all installed agents and builds the connection graph.

Step 2: Find Your Target

scs_list(type="artifacts")

This shows all artifact types you can produce. Pick one as your goal.

Step 3: Get Optimal Path

scs_init(target="ValidatedPRD", prefer="balanced")

SCS finds the best path to your target:

  • prefer="fast" — shortest path, fewest skills
  • prefer="quality" — most thorough, includes validation steps
  • prefer="balanced" — trade-off between speed and quality

Step 4: Understand the Plan

scs_get(type="dag", id="plan_xxx")

See the full execution plan — each step, inputs, outputs, and why this path was chosen.

Step 5: Execute

Follow the plan steps in order. Each step tells you:

  • Which skill to invoke
  • What input to provide
  • What output to expect

Tool Reference

Tool Purpose When to Use
scs_init() Full initialization First time, or after adding new skills
scs_init(target=...) Path to specific goal When you know what you want to produce
scs_scan() Scan only, no compile Large skill sets (2000+), avoid timeout
scs_compile(target=...) Compile to plan After scs_scan, when ready to generate plans
scs_list(type=...) Browse inventory Explore skills, artifacts, plans
scs_get(type=..., id=...) View details Deep dive into a specific item
scs_diagnostics(plan_id=...) Debug plan Understand why a path was chosen
scs_clear() Reset state Start fresh, clear all cached data

Best Practices

1. Define Skills with Clear Artifact Types

Good skill definition:

---
inputs:
  - type: UserRequest
    description: Raw user requirements
outputs:
  - type: PRDDocument
    description: Structured product requirements
---

Avoid vague types like Document or Text — use specific types so SCS can match correctly.

2. Use Target-Driven Initialization

Instead of scanning all skills and browsing:

scs_init(target="ValidatedPRD")

This focuses SCS on finding the optimal path to your goal, much faster and more relevant.

3. Check Diagnostics Before Execution

scs_diagnostics(plan_id="plan_xxx")

This shows:

  • Why each skill was selected
  • What alternatives were considered
  • Where gaps exist (if any)

4. Handle Large Skill Sets Properly

When you have 2000+ skills across multiple agents:

# Don't call scs_init() directly — it may timeout

# Use phased approach:
scs_scan()                        # ~90 seconds
scs_list(type="artifacts")        # Explore available outputs
scs_compile(target="YourTarget")  # ~30 seconds with target

Real-World Example

Scenario: You want to generate a validated PRD from user requirements.

# 1. Initialize with target
scs_init(target="ValidatedPRD", prefer="balanced")

# 2. Get the plan
scs_list(type="dag")  # Find the plan ID
scs_get(type="dag", id="plan_abc123")

# 3. Plan shows:
Step 0: UserRequest → Step 1: WritePRD → Step 2: ReviewPRD → ValidatedPRD

# 4. Execute step by step:
- Step 1: Invoke "write_prd" skill with user requirements
  → Produces PRDDocument
- Step 2: Invoke "review_prd" skill with PRDDocument
  → Produces ValidatedPRD

# 5. Result: ValidatedPRD ready for use

SCS ensured:

  • Skills are ordered correctly
  • Each step's input is available from previous step
  • No circular dependencies
  • The path is optimal for "balanced" preference

What SCS Does NOT Do

SCS is a compiler/planner, not an executor:

  • ❌ Does not run skills for you
  • ❌ Does not invoke AI agents
  • ❌ Does not generate content directly

You (or your AI agent) execute the plan. SCS just gives you the verified blueprint.


Coverage

SCS works across 8 industries, 176 artifact types:

Industry Example Artifacts
Software Requirements, source code, test report, API spec
Legal Contract, legal opinion, due diligence report
Marketing Marketing plan, brand guidelines, ad copy
Finance Financial report, invoice, ROI analysis
HR Job description, resume, performance review
Research Research paper, literature review, grant application
Content Article, blog post, video script
Operations Service ticket, SOP, incident report

Project Links


SCS — Compile skills, not chaos.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

scs_mcp-0.5.4.tar.gz (99.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

scs_mcp-0.5.4-py3-none-any.whl (112.0 kB view details)

Uploaded Python 3

File details

Details for the file scs_mcp-0.5.4.tar.gz.

File metadata

  • Download URL: scs_mcp-0.5.4.tar.gz
  • Upload date:
  • Size: 99.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.3

File hashes

Hashes for scs_mcp-0.5.4.tar.gz
Algorithm Hash digest
SHA256 f8e1f8357f444aa6bb2b99cac56da323f3986a46fccbb031709b0921374a208f
MD5 757bb59632e7fda7bda84989a452ece5
BLAKE2b-256 9fc8ed8c9e25b0dc9ba831a41a66c3a5b69967836b25dda8123e1f5484cab935

See more details on using hashes here.

File details

Details for the file scs_mcp-0.5.4-py3-none-any.whl.

File metadata

  • Download URL: scs_mcp-0.5.4-py3-none-any.whl
  • Upload date:
  • Size: 112.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.3

File hashes

Hashes for scs_mcp-0.5.4-py3-none-any.whl
Algorithm Hash digest
SHA256 10a2ef822108c174fe4e113c2bbcad8fac87194613b2b1972a9003e07417366e
MD5 67dc9733f8def5b7d0e849e5de70007b
BLAKE2b-256 3a4d06ac35c2b63d7adda8dc046a3aa1a380cc1bde9e67b40f59ba0ca564135c

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page