Skip to content
cccskills
FreePublished on GitHub

commission

Commission a project to an SDLC option bundle (solo / single-team / programme / assured). Asks structured questions, recommends an option × level, installs the bundle, and records the decision in .sdlc/team-config.json.

The English summary is being prepared. Showing the original description.

See how to install

Files included (6)

  • SKILL.md5.0 KB
  • templates/sample-bundle/agents/sample-agent.md354 B
  • templates/sample-bundle/CONSTITUTION.md323 B
  • templates/sample-bundle/manifest.yaml390 B
  • templates/sample-bundle/skills/sample-skill/SKILL.md334 B
  • templates/sample-bundle/templates/feature-proposal.md277 B

SKILL.md (original)

Review the instructions the agent will receive before you install.

Commission an SDLC Option Bundle

Walk a project through commissioning to one of four SDLC options: solo (1-2 people, fast iteration), single-team (3-10, current default), programme (11-50, formal phase gates), assured (regulated industries with traceability).

Pre-flight

PROJECT_DIR=$(pwd)
TEAM_CONFIG="$PROJECT_DIR/.sdlc/team-config.json"

# Check if already commissioned
python3 -c "
from pathlib import Path
from sdlc_core_scripts.commission.recorder import is_commissioned
print('COMMISSIONED' if is_commissioned(Path('$TEAM_CONFIG')) else 'FRESH')
"

If COMMISSIONED, ask the user to confirm re-commissioning before proceeding. Show the existing record:

python3 -c "
from pathlib import Path
from sdlc_core_scripts.commission.recorder import read_record
r = read_record(Path('$TEAM_CONFIG'))
print(f'  Current option: {r.sdlc_option}')
print(f'  Current level: {r.sdlc_level}')
print(f'  Bundle version: {r.option_bundle_version}')
print(f'  Commissioned: {r.commissioned_at} by {r.commissioned_by}')
"

Questions (ask one at a time, brief)

Skip any question whose answer is in arguments (--option, --level).

  1. Team size — 1-2 / 3-10 / 11-50 / 50+
  2. Blast radius of a defect — low / moderate / high / severe
  3. Regulatory burden — none / low / moderate / high
  4. Specification maturity — emergent / mixed / contract-first / formal
  5. Time-to-market pressure — very high / high / moderate / low

If user has set arguments overriding all of these, skip directly to recommendation.

Recommendation logic

team-size 1-2 + low blast radius          → solo / prototype
team-size 3-10 + moderate blast radius    → single-team / production
team-size 11-50 + formal spec             → programme / production
any size + high regulatory burden         → assured / enterprise

If two recommendations tie, prefer the simpler one (solo > single-team > programme > assured).

Show the recommendation with rationale (which questions drove it).

Override

User may override the recommendation. If the override is unusual (e.g. solo + enterprise, programme + prototype), warn but never block:

WARNING: solo + enterprise is unusual. Solo bundles are designed for
1-2 person projects with fast iteration; enterprise level mandates
formal architecture documents. Are you sure?  (y/N)

The user knows things the framework doesn't.

Install

BUNDLE_DIR="${ARG_BUNDLE_DIR:-skills/commission/templates/sample-bundle}"

python3 << 'EOF'
import json
from datetime import datetime, timezone
from pathlib import Path
from sdlc_core_scripts.commission.manifest import parse_manifest
from sdlc_core_scripts.commission.installer import install_bundle
from sdlc_core_scripts.commission.recorder import CommissioningRecord, write_record, is_commissioned

bundle_dir = Path("$BUNDLE_DIR")
project_dir = Path("$PROJECT_DIR")
team_config = Path("$TEAM_CONFIG")

manifest = parse_manifest(bundle_dir / "manifest.yaml")

# Ask user before overwrite if constitution exists and project is uncommissioned
constitution = project_dir / "CONSTITUTION.md"
overwrite = is_commissioned(team_config)  # re-commissioning ⇒ overwrite OK
if constitution.exists() and not overwrite:
    print(f"WARNING: {constitution} exists and project is uncommissioned.")
    print("  Continuing will replace the existing constitution.")
    response = input("  Proceed? [y/N] ")
    if response.lower() != "y":
        print("Aborted.")
        raise SystemExit(1)
    overwrite = True

result = install_bundle(bundle_dir, project_dir, manifest, overwrite=overwrite)
print(f"Installed {len(result.installed_paths)} files:")
for p in result.installed_paths:
    print(f"  {p.relative_to(project_dir)}")

record = CommissioningRecord(
    sdlc_option="<USER_CHOSEN_OPTION>",
    sdlc_level="<USER_CHOSEN_LEVEL>",
    commissioned_at=datetime.now(timezone.utc).isoformat(),
    commissioned_by="claude-agent",
    option_bundle_version=manifest.version,
)
write_record(team_config, record)
print(f"Commissioned: {record.sdlc_option} / {record.sdlc_level} / {record.option_bundle_version}")
EOF

Substitute <USER_CHOSEN_OPTION> and <USER_CHOSEN_LEVEL> based on the recommendation + user override outcome.

Done

Report:

  • Bundle installed: <option> v<version>
  • Files written: count + list
  • Commissioning record at: .sdlc/team-config.json
  • Next step: run /sdlc-core:validate --quick to confirm the bundle's validators run cleanly against the project.

Model selection

This skill is mostly mechanical (file copies, JSON writes). A smaller or faster model is sufficient. The recommendation logic is a deterministic table lookup, not deep reasoning.

Reviews

No reviews yet. Tell others what you thought.

Comments

No login needed. Share how it worked for you, ask a question, or note where it did not run.

No comments yet. Be the first to write one.

Comments are published right away. Do not include personal information such as email addresses or phone numbers. Up to 2 URLs.

0 / 1,000 characters

This form is protected by reCAPTCHA, and the Google Privacy Policy and Terms of Service apply.

More skills from this repository

Generate a GitHub Actions workflow for Android — JDK + Gradle caching, build, unit + instrumented tests, Android Lint, run the Android pre-flight checks, and (optionally) sign + upload a signed app bundle to a Play track. Use when setting up CI for an Android app.

The English summary is being prepared. Showing the original description.

SteveGJones/ai-first-sdlc-practices41Updated Oct 5, 2026

Validated Google Play release — runs the pre-flight checks and clears the Play policy gates, builds a signed app bundle with a git-stamped versionCode, uploads to a track, and walks staged rollout (with halt/roll-forward). Use when releasing an Android app to Play.

The English summary is being prepared. Showing the original description.

SteveGJones/ai-first-sdlc-practices41Updated Oct 5, 2026

Scaffold a new Android app with SDLC and Play-safe defaults — Kotlin/Compose Gradle project with version catalog, convention plugins, module layout, a targetSdk that meets the Play mandate, R8 on release, and git-ignored signing so it passes the pre-flight checker from day one. Use when starting a new Android project.

The English summary is being prepared. Showing the original description.

SteveGJones/ai-first-sdlc-practices41Updated Oct 5, 2026

Set up Android app signing safely — generate an upload keystore, enroll in Play App Signing, and wire a Gradle release signingConfig that reads secrets from a git-ignored keystore.properties / CI (never committed). Use when configuring signing for a Play release.

The English summary is being prepared. Showing the original description.

SteveGJones/ai-first-sdlc-practices41Updated Oct 5, 2026

Pick an existing workflow for a task or author a new one — recommends workflow + team formation, or generates a fresh workflow YAML with command prompts and team validation.

The English summary is being prepared. Showing the original description.

SteveGJones/ai-first-sdlc-practices41Updated Oct 5, 2026

Guide the team through writing a change-impact record for IEC 62304 / FDA / ISO 26262 ASIL C+ projects. Surfaces the affected REQ/DES/TEST/CODE artefacts and captures human-attested verification approach.

The English summary is being prepared. Showing the original description.

SteveGJones/ai-first-sdlc-practices41Updated Oct 5, 2026

See all skills by SteveGJones

Report a problem with this skill