ワンクリックで
template-onboard
Interview the adopter and emit a context file for their organization
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
メニュー
Interview the adopter and emit a context file for their organization
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
SOC 職業分類に基づく
Recurring 23-domain enterprise/ISO repository audit — governance, traceability, security, supply chain, reproducibility, observability, architecture, technical debt, DX — produces a findings report with file:line evidence and risk ratings, and preserves the audit bar via anti-patterns Q-01…Q-08
Recurring 23-domain enterprise/ISO repository audit — governance, traceability, security, supply chain, reproducibility, observability, architecture, technical debt, DX — produces a findings report with file:line evidence and risk ratings, and preserves the audit bar via anti-patterns Q-01…Q-08 (Mode: AUTO — AGENTS.md Agent Behavior Protocol applies.)
Review cloud costs against budget and identify optimization opportunities
Debug ML inference issues — latency spikes, wrong predictions, event loop blocking
Scan a service for edge-protection coverage (WAF, DDoS mitigation, rate limiting) against ADR-042/D-38 — produces a PASS/FAIL report with file:line evidence
Scan a service for edge-protection coverage (WAF, DDoS mitigation, rate limiting) against ADR-042/D-38 — produces a PASS/FAIL report with file:line evidence (Mode: AUTO — AGENTS.md Agent Behavior Protocol applies.)
| name | template-onboard |
| description | Interview the adopter and emit a context file for their organization |
| allowed-tools | ["Read","Grep","Glob","Bash(python3:*)","Bash(cat:*)","Bash(test:*)"] |
| when_to_use | Use when a new adopter needs to generate a *_context.local.yaml file that captures their organization's specific configuration (cloud provider, registry, MLflow URL, etc.) without writing secrets. Examples: 'onboard my org', 'generate context file', 'set up adoption context'. |
| argument-hint | [service-path] |
| arguments | ["service-path"] |
| authorization_mode | {"generate_context":"AUTO","validate_context":"AUTO","escalation_triggers":[{"secret_in_context":"STOP"},{"invalid_schema":"STOP"}]} |
When a new adopter needs to create a *_context.local.yaml file that
captures their organization's configuration without writing secrets.
This is the first step after scaffolding a service.
copier copy (or new-service.sh).*_context.local.yaml is in .gitignore (verified by the
scaffolder).adopter_context.schema.json exists in the service config/
directory. This is a distinct schema from context.schema.json
(ADR-023's company/project risk-context, consumed by
risk_context.py) — the adopter context captures infrastructure
wiring (cloud provider, registry, tracking URIs), not risk/compliance
posture, and validating this file against context.schema.json
would always fail (additionalProperties: false on an unrelated shape).cd "$service-path"
test -f config/adopter_context.schema.json # schema must exist
grep -q "_context.local.yaml" .gitignore # must be gitignored
If either check fails → STOP with a clear message.
Ask the following questions. Each answer is written to
<service_slug>_context.local.yaml. If the adopter declines to answer,
the field is left as null (never guessed).
Questions:
gcp, aws, or local?gcr.io/my-org/, 123456.dkr.ecr.us-east-1.amazonaws.com/). Leave null if using local profile.file://./mlruns for local.gs://my-bucket/dvc/, s3://my-bucket/dvc/, or null for local.null for local.DEBUG, INFO, WARNING, ERROR (default: INFO).Write the answers to <service_slug>_context.local.yaml:
# Generated by /onboard — NEVER commit this file (gitignored).
# This file contains organizational configuration, NOT secrets.
# Secrets go in AWS Secrets Manager / GCP Secret Manager (D-17/D-18).
cloud_provider: gcp # or aws, local
container_registry: gcr.io/my-org/
mlflow_tracking_uri: file://./mlruns
dvc_remote: null
github_org: my-org
monitoring_endpoint: null
log_level: INFO
profile: local # matches active_profile.yaml
python3 -c "
import json, yaml, jsonschema
schema = json.load(open('config/adopter_context.schema.json'))
data = yaml.safe_load(open('${service_slug}_context.local.yaml'))
jsonschema.validate(data, schema)
print('Context file valid')
"
If validation fails → STOP with the schema error.
# D-17: no credentials in any file
grep -rEI "AKIA[0-9A-Z]{16}|AIza[0-9A-Za-z_-]{35}|ghp_[A-Za-z0-9]{36}" \
"${service_slug}_context.local.yaml"
If any pattern matches → STOP. Chain to /secret-breach.
Print a summary:
active_profile.yaml)active_profile.yaml — use /stack-switch for that.context.schema.json (checked in Step 4).null.