Standards for authoring SDD plugin agents — frontmatter, self-containment, skill references, and no-user-interaction rules.
日本語の概要は準備中です。原文の説明を表示しています。
Standards and patterns for SDD configuration management.
インストールする前に、エージェントに与えられる指示の中身を確認できます。
Standards and patterns for SDD configuration management.
components/config/envs/default/ → envs/{env}/ merge orderSDD_CONFIG_PATH allowed for serverscomponents/config/
├── package.json # Workspace package for type imports
├── tsconfig.json # TypeScript config
├── envs/
│ ├── default/
│ │ └── config.yaml # Base configuration (always merged first)
│ ├── local/
│ │ └── config.yaml # Local development overrides
│ ├── staging/
│ │ └── config.yaml # Staging overrides (add as needed)
│ └── production/
│ └── config.yaml # Production overrides (add as needed)
├── schemas/
│ └── config.schema.json # JSON Schema for validation
└── types/
├── index.ts # Re-exports all config types
└── {component}.ts # Per-component type definitions
Secret suffix (e.g., passwordSecret)# Section names match component names
task-service: # -> components/servers/task-service/
port: 3000
task-dashboard: # -> components/webapps/task-dashboard/
apiBaseUrl: /api
taskdb: # -> components/databases/taskdb/
host: localhost
# envs/default/config.yaml
global: {} # Reserved for future cross-cutting concerns
# Each component gets a section matching its directory name
server-task-service:
port: 3000
probesPort: 9090
logLevel: info
database:
host: db.internal
port: 5432
name: taskdb
user: app
passwordSecret: task-service-db-credentials
pool: 10
webapp-task-dashboard:
apiBaseUrl: /api
features:
darkMode: true
Components are environment-agnostic. Server, frontend, database, contract components never know which environment they're running in. They receive config values and use them.
Only two places know about environments:
components/config/ - has envs/local/, envs/production/, etc.components/helm-*/ - has values-local.yaml, values-production.yaml, etc.A server component:
config.port and listens on itconfig.database.host and connects to itif (env === 'local') logicTypes are defined in components/config/types/:
// types/server.ts
export type ServerConfig = Readonly<{
port?: number;
probesPort?: number;
logLevel?: 'debug' | 'info' | 'warn' | 'error';
database?: Readonly<{
host?: string;
port?: number;
name?: string;
user?: string;
passwordSecret?: string;
pool?: number;
}>;
}>;
Components import types via workspace package:
// In server component
import type { ServerConfig } from '@my-project/config/types';
schemas/config.schema.json) validates all config{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"global": { "type": "object" },
"server-task-service": {
"type": "object",
"properties": {
"port": { "type": "number" },
"logLevel": { "enum": ["debug", "info", "warn", "error"] }
}
}
}
}
components/config/envs/default/config.yamlcomponents/config/envs/local/config.yamlcomponents/config/schemas/config.schema.jsoncomponents/config/types/{component}.ts/sdd I want to generate config
SDD_CONFIG_PATH=./local-config.yaml npm start
Config contains secret references (K8s Secret names), not values:
# In config YAML
server-task-service:
database:
host: db.production.internal
passwordSecret: "task-service-db-credentials" # K8s Secret name
At deploy time, Helm maps these references to actual secrets:
# In helm-task-service/templates/deployment.yaml
env:
- name: DB_PASSWORD
valueFrom:
secretKeyRef:
name: {{ .Values.config.database.passwordSecret }}
key: password
The application reads DB_PASSWORD from environment, not from config YAML.
Generated config files should be gitignored:
# Generated config files in server components (never commit)
components/server-*/local-config.yaml
components/server-*/*.schema.json
All envs/ directories ARE committed - they contain references only.
NODE_ENV is an infrastructure exception, not application config. It exists because third-party libraries check it for optimizations.
Application code NEVER reads NODE_ENV. It's injected by Helm for library behavior only.
| Environment | NODE_ENV | Set By |
|---|---|---|
| Local dev | Not set | (libraries default to development) |
| K8s staging | development | Helm values |
| K8s production | production | Helm values |
Validation happens:
/sdd I want to generate config time (CLI)This skill defines no input parameters or structured output.
まだレビューはありません。使ってみた感想をお寄せください。
概要と使いどころ
Standards for authoring SDD plugin agents — frontmatter, self-containment, skill references, and no-user-interaction rules.
日本語の概要は準備中です。原文の説明を表示しています。
Scaffolds Node.js/TypeScript backend components with CMDO architecture, driven by component settings.
日本語の概要は準備中です。原文の説明を表示しています。
CMDO architecture standards for Node.js/TypeScript backends with strict layer separation.
日本語の概要は準備中です。原文の説明を表示しています。
Intent-to-command mappings for fullstack-typescript tech pack features.
日本語の概要は準備中です。原文の説明を表示しています。
Create change specification and implementation plan with dynamic phase generation. Supports feature, bugfix, refactor, and epic types.
日本語の概要は準備中です。原文の説明を表示しています。
Orchestrates the full change lifecycle — routes actions to phase-specific sub-files.
日本語の概要は準備中です。原文の説明を表示しています。