Back to list
smileynet

ic-validate

by smileynet

Personal toolkit for Stationeers IC10 programming with Claude AI integration

0🍴 0📅 Dec 25, 2025

SKILL.md


name: ic-validate description: Validate IC10 code for correctness. Use when user wants to check IC10 code for errors, constraint violations, or best practice issues before using it in Stationeers.

IC10 Code Validation

Validate IC10 code for syntax, constraints, and best practices.

Workflow

1. Validation Phase (Primary)

Use Task tool to spawn:

  • code-validator - Check code for all validation rules

The validator will check:

  • Syntax correctness (valid instructions, operands)
  • Line count (≤128 lines)
  • Register usage (r0-r15, ra, sp valid)
  • Device count (d0-d5 + db)
  • Loop safety (yield present in loops)
  • Common errors (uninitialized registers, unreachable code)

2. Research Phase (If Needed)

If validator encounters unfamiliar instructions or devices:

  • instruction-researcher - Verify instruction exists and syntax is correct
  • device-researcher - Verify device logic types

Validation Checks

Critical (Will Break)

  1. Invalid instruction - Instruction doesn't exist
  2. Wrong operand count - Too few/many arguments
  3. Line count exceeded - Over 128 lines
  4. Invalid register - Not r0-r15, ra, or sp
  5. Invalid device port - Not d0-d5 or db

Warnings (May Cause Issues)

  1. Missing yield - No yield in loop (CPU overrun)
  2. Uninitialized register - Read before write
  3. Unused alias - Defined but never used
  4. Unreachable code - Code after unconditional jump
  5. Device not checked - Read without bdns check

Style (Best Practices)

  1. No aliases - Using raw d0-d5 instead of aliases
  2. Magic numbers - Using numbers instead of defines
  3. Missing comments - No documentation
  4. Long lines - Over 90 characters

Instructions

When user requests IC10 code validation:

  1. Launch code-validator with the user's code

    • Include any specific concerns they mention
    • Include what the code is supposed to do (if known)
  2. Review validator output

    • Categorize issues by severity
    • Verify critical issues are real problems
  3. Present the results

    • Show validation summary (pass/fail)
    • List issues by severity
    • Suggest fixes for critical issues
  4. Overall verdict

    • ✅ PASS - No critical issues, code should work
    • ⚠️ WARNINGS - Will work but has potential issues
    • ❌ FAIL - Has critical issues that will break

External Validator Tool

This skill can leverage an external Python validator for consistent, deterministic results:

uv run -m tools.ic10_validator --stdin --format json

Validation approach:

  1. Run external validator for syntax/constraint errors (deterministic)
  2. Use agent-based validation for semantic/style checks (context-aware)
  3. Combine results into unified report

What the external tool checks:

  • Instruction validity (E003)
  • Register validity (E004: r0-r15, ra, sp)
  • Device validity (E005: d0-d5, db, dr)
  • Line count (E002: ≤128 lines)
  • Code size (E007: ≤4096 bytes)
  • Branch targets (E006: all labels defined)
  • Loop safety (W002: yield in loops)
  • Line length (W001: ≤90 chars)

What the agent adds:

  • Device logic type verification
  • Game-specific semantic checks
  • Style recommendations
  • Context-aware suggestions

Example Triggers

  • "Validate this code"
  • "Check if this IC10 is correct"
  • "Will this code work?"
  • "Is there anything wrong with this?"
  • "Check my code for errors"
  • "Verify this script"

Score

Total Score

50/100

Based on repository quality metrics

SKILL.md

SKILL.mdファイルが含まれている

+20
LICENSE

ライセンスが設定されている

0/10
説明文

100文字以上の説明がある

0/10
人気

GitHub Stars 100以上

0/15
最近の活動

3ヶ月以内に更新がある

0/10
フォーク

10回以上フォークされている

0/5
Issue管理

オープンIssueが50未満

+5
言語

プログラミング言語が設定されている

+5
タグ

1つ以上のタグが設定されている

0/5

Reviews

💬

Reviews coming soon