design
Design a multi-cloud, four-environment infrastructure configuration from requirements and emit the design document, environment matrix and ADRs, with no…
Skill by wfukatsu
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/wfukatsu-design
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: documents, design, devops
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md and code. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/design
What's inside
- Skill name
design- Description
- Design a multi-cloud, four-environment infrastructure configuration from requirements and emit the design document, environment matrix and ADRs, with no implementation code. Use for "design the infrastructure", "select the technology", "compare the approaches"; /infra:implement follows.
- License
- MIT
- Instructions
- 229 lines in SKILL.md · view on GitHub
Agent Skills spec issues
- name: missing
- files: referenced but missing: templates/infra/env-matrix.md, templates/infra/adr.md, templates/infra/design-doc.md
Files (1)
- SKILL.md
SKILL.md (first lines)
# Infrastructure Design
Shared files: a path written `@rules/…`, `@skills/…`, `@templates/…` or `@docs/…` is relative to the
plugin root, `${CLAUDE_PLUGIN_ROOT}` — not to the project being worked on. Read it from there.
**Usage:** `/infra:design [target] [--env=<env>] [--cloud=<cloud>] [--auto]`
## Desired Outcome
A configuration a team can build from, in which:
- Requirements are **numbers**, not adjectives
- The multi-cloud premise and the four environments are settled, with the cloud × environment
grid filled in
- Every resource has **exactly one owner**
- Each of L1–L4 states what stays identical across environments and what may differ
- The promotion path is designed **per digest**
- Every decision that had two or more options is recorded as an ADR
- The open questions are listed rather than silently resolved
**No implementation code is written here.**
## Decision Criteria
| Situation | Do this |
|-----------|---------|
| A requirement is qualitative ("highly available", "fast") | It is not a requirement yet. Ask for a number, or record a provisional value with the reason it is provisional |
| The bundle covers the topic | Cite it `[document.md]` and state it at the right tier (fact / guidance / open question) |
| The bundle does not cover it (all of `local`; anything production-specific) | Say "outside the bundle's scope", ground it in official documentation or in @rules/infra/environments.md §5, and never speak with the bundle's authority |
| Three or more differences cannot be expressed in common across clouds | Choose separation, not abstraction (@rules/infra/multi-cloud.md §1) |
| More than three differences between two environments | It is becoming a different system. Question the differences before adding another overlay |
## Prerequisites
| File | Required/Recommended | Source |
|------|---------------------|--------|
| `knowledge/okf-k8s-tf/` | **Required** | Vendored bundle (@rules/okf-k8s-tf-bundle.md) |
| reports/03_design/target-architecture.md | Recommended | /architect:design-microservices |
| reports/08_infrastructure/infrastructure-design.md | Recommended | /architect:design-infrastructure — the logical design this makes concrete |
| reports/08_infrastructure/{security,observability,disaster-recovery}-design.md | Recommended | The corresponding `/architect:design-*` skills — policy this design implements |
| The target repository | Recommended | Read it when it exists; the code is the fact and the bundle is the standard |
When invoked from `/infra:start`, environment, cloud, target path, `$OKF` and the freshness list
arrive already settled. **Do not re-ask them** — confirm only what is missing. When invoked directly, run
@rules/okf-k8s-tf-bundle.md §1–2 first (resolve, freshness, environment, cloud).
The freshness list names the bundle documents past `stale_after` or awaiting re-verification
(from `tools/update-okf-bundle.sh status --bundle=k8s-tf` when invoked directly). A design claim
resting on a listed document says the document awaits re-verification and why, and a decision
that depends on such a claim is also listed in the design's open questions — it may move when
the document is revised.
## Step 1 — Turn requirements into numbers
Use the "requirements and boundaries" section of `architecture/design-build-checklist.md` as the
question list. Do not leave a blank and continue: record a provisional value with its grounds.
- Availability target, RTO / RPO
- Performance (throughput, latency)
- Data retention
- Budget
- Regulatory constraints and data residency
- For each environment in scope: purpose, data, access, change approval
A requirement without a number cannot ground a design decision.
## Step 2 — Settle the multi-cloud and environment premises
Fill in the four items of @rules/infra/multi-cloud.md §0. A design that proceeds with these vague
will break later — that is the single most reliable failure in this area.
Then fill the environment matrix (@rules/infra/environments.md §1). At minimum:
- **Which of the four environments this design covers**
- The cloud × environment grid (§7). A blank cell means "not deployed here", never left implicit
- Separation of purpose, data, access and change approval per environment
[architecture/design-build-checklist.md]
- **The production apply path.** The bundle has no implementation fact here, so decide it now and
record it as an ADR (staging's GitOps plus approval, protection and sync windows is the
bundle-consistent shape)
- **The declaration of what local does not reproduce.** This is the central deliverable of
local-environment design, not a footnote
## Step 3 — Decide the ownership split
Start from the bundle's ownership table and produce this system's version
[architecture/platform-architecture.md].
| Resource | Where the declaration lives | Applied by | State / history |
|----------|-----------------------------|------------|-----------------|
**Verify one-resource-one-owner immediately after writing the table** — that Terraform, Argo CD,
CI and manual operation do not overlap. For reference, the observed implementation splits as:
- Cloud foundation → `terraform/environments/*/infra`, the Terraform job in GitLab CI
- Shared Kubernetes platform → `terraform/environments/*/kubernetes` + `terraform/modules/kubernetes`
- Upstream Helm values → `terraform/charts`, Terraform `helm_release`
- Staging applications → `kubernetes/staging`, Argo CD app-of-apps
- Test manifests → `kubernetes/test` or the app's `k8s/`, applied by procedure or CI `kubectl apply`
## Step 4 — Design layer by layer
Work L1 → L4 (@rules/infra/multi-cloud.md §1), reading the bundle document for each. **State for
every layer what stays identical across environments and what may differ**
(@rules/infra/environments.md §2).
| Layer | What to decide | Bundle |
|-------|----------------|--------|
| L1 cloud foundation | Network, cluster, database, IAM, storage, state boundaries | `foundation/terraform.md` |
| L2 Kubernetes | Namespace design, RBAC, NetworkPolicy, Pod Security, workload availability | `foundation/kubernetes.md` |
| L3 shared components | Which charts, common vs. differing values, CRD lifecycle | `foundation/helm.md`, `architecture/supporting-stack.md` |
| L4 delivery | The GitOps boundary, CI stages, environment protection, image identity | `delivery/*.md` |
| Cross-cutting | Secrets, observability, policy | `secrets/*.md`, `operations/*.md`, `security/*.md` |
Any version named here is **looked up, not recalled**, and must be stable and non-EOL
(@rules/dependency-versions.md). State the version *and* its support horizon so
`/infra:implement` pins the same set.
## Step 5 — Write the apply flowFrom wfukatsu/nexus-architect, MIT.
More from wfukatsu/nexus-architect
- 0.632score
config
wfukatsu
Generate ScalarDB configuration files (database.properties, build.gradle dependencies) based on your choices.
SkillAFreshness: A★ 13Claude Code +9 - 0.632score
crud-ops
wfukatsu
Show ScalarDB CRUD operation patterns — builder syntax for Get, Scan, Insert, Upsert, Update, Delete with examples.
SkillAFreshness: A★ 13Claude Code +9 - 0.632score
docs
wfukatsu
Search ScalarDB / ScalarDL documentation for specific topics.
SkillAFreshness: A★ 13Claude Code +9 - 0.629score
analyze
wfukatsu
Extract ubiquitous language, actor-role-permission matrix, and domain-code mapping.
SkillAFreshness: A★ 13Claude Code +9 - 0.629score
build-app
wfukatsu
Build a complete ScalarDB application from a domain description.
SkillAFreshness: A★ 13Claude Code +9 - 0.629score
capture-followup
wfukatsu
Capture follow-up work discovered during backlog delivery — deferred tasks, out-of-scope findings, doc drift, waived acceptance criteria — into a reviewable…
SkillAFreshness: A★ 13Claude Code +9 - 0.629score
generate-test-specs
wfukatsu
Generate BDD scenarios, contract test, unit test, property-based test, integration test, and performance test specifications.
SkillAFreshness: A★ 13Claude Code +9 - 0.629score
analyze-data-model
wfukatsu
Comprehensive data layer analysis including entity/relationship analysis, DB design evaluation, and ER diagram generation.
SkillAFreshness: A★ 13Claude Code +9 - 0.629score
deliver-backlog
wfukatsu
Drive each Issue under an Epic through implement → review → human approval → merge, in order, resuming from backlog-manifest.json and stopping at every human…
SkillAFreshness: A★ 13Claude Code +9 - 0.629score
analyze-ui
wfukatsu
Analyze the user interface of an existing system: screens with their inputs, outputs, actions and access; UI components; features and user tasks; business…
SkillAFreshness: A★ 13Claude Code +9 - 0.629score
design-api
wfukatsu
Generate REST/GraphQL/gRPC/AsyncAPI specifications as the project's single, verifiable API contract — named schemas, every status code declared, RFC 9457…
SkillAFreshness: A★ 13Claude Code +9 - 0.629score
design-data-layer
wfukatsu
Generic database design for non-ScalarDB projects.
SkillAFreshness: A★ 13Claude Code +9
Signals
- Stars
- 13
- Forks
- 1
- Open issues
- 0
- Last commit (this folder)
- Oct 8, 2026 (21 days ago)
- Last release
- Oct 9, 2026 (20 days ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- MIT
- Repository
- github.com/wfukatsu/nexus-architect
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from wfukatsu
- 0.632score
docs
wfukatsu
Search ScalarDB / ScalarDL documentation for specific topics.
SkillAFreshness: A★ 13Claude Code +9 - 0.632score
crud-ops
wfukatsu
Show ScalarDB CRUD operation patterns — builder syntax for Get, Scan, Insert, Upsert, Update, Delete with examples.
SkillAFreshness: A★ 13Claude Code +9 - 0.632score
config
wfukatsu
Generate ScalarDB configuration files (database.properties, build.gradle dependencies) based on your choices.
SkillAFreshness: A★ 13Claude Code +9 - 0.629score
analyze
wfukatsu
Extract ubiquitous language, actor-role-permission matrix, and domain-code mapping.
SkillAFreshness: A★ 13Claude Code +9 - 0.629score
build-app
wfukatsu
Build a complete ScalarDB application from a domain description.
SkillAFreshness: A★ 13Claude Code +9 - 0.629score
analyze-ui
wfukatsu
Analyze the user interface of an existing system: screens with their inputs, outputs, actions and access; UI components; features and user tasks; business…
SkillAFreshness: A★ 13Claude Code +9
Cite this page
design skill. Agent Mart. https://agentmart.dev/skills/wfukatsu-design (last updated 2026-10-24)