Skip to content
Back to skills

Initial Deployment

ASecurity

Takes the project from deploy-ready to running in the cloud — the last mile scaffolding stopped short of. Reads the deployment target and topology from the architecture's ADRs and deployment view, then executes: provisions the environments and infrastructure from the deployment configs in the repo, stands up real secrets management, extends CI to CD, deploys the current build, and verifies live — including the walking skeleton's pending deployed-half done-when and any pending-environment NFR ...

  • 7 stars
  • 0 votes
  • 0 copies
  • 0 views
  • Added September 29, 2026
ai-agentsgoshelldockersecurity

Works with

  • cli

Security analysis

A100/100

Pro scans all 4 files and shows the line behind each finding

Scanned September 29, 2026

npx -y skills add zeeshanhanif/agentic-sdlc-kit --skill initial-deployment --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Initial Deployment?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Initial Deployment
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/zeeshanhanif-initial-deployment/badge)](https://www.skillsdirectory.com/skills/zeeshanhanif-initial-deployment)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: initial-deployment
description: >-
  Takes the project from deploy-ready to running in the cloud — the last mile
  scaffolding stopped short of. Reads the deployment target and topology from
  the architecture's ADRs and deployment view, then executes: provisions the
  environments and infrastructure from the deployment configs in the repo,
  stands up real secrets management, extends CI to CD, deploys the current
  build, and verifies live — including the walking skeleton's pending
  deployed-half done-when and any pending-environment NFR measurements from
  acceptance reports. Folds in minimum operations: uptime check, error
  alerting, backup-and-restore verified. Cloud-agnostic: the process is
  encoded, the target is an input, CLI specifics verified against live docs.
  Requires user-held cloud credentials (blocking ask) and confirms the plan
  before creating billable resources. Trigger on "deploy the project", "first
  deploy", "initial deployment", "provision the infrastructure", "set up the
  environments", "take it live", or "go to production".
---

# Initial Deployment

The bridge from **deploy-ready to running**. Scaffolding wrote the deployment
configs, environment parameterization, and CI — and stopped, by contract, at
"the initial deployment is the user's step." This skill is that step, with the
same character as scaffolding: real execution against live reality, empirical
verification, honest notes, and checkpointed progress that never blindly
re-provisions.

Three principles govern it:

1. **The target is an input, never a decision.** The architecture's ADRs and
   deployment view chose the cloud/platform and topology; this skill reads
   and executes them. Gaps (a region never stated, a service tier unnamed)
   are elicited — and flagged as candidate architecture amendments. The
   process is cloud-agnostic; the run is cloud-specific; CLI names, flags,
   and console steps are **verified against live provider docs** at run time —
   never recited from memory (they drift faster than generators do).
2. **Money and credentials get gates.** Provisioning creates billable
   resources: the deployment plan (what gets created, environments, rough cost
   class) is played back for **one explicit confirmation** before anything is
   created. Credentials stay in the user's hands: the skill preflights that
   the provider CLI is authenticated and **blocks with instructions when it
   isn't** — it never asks for, stores, or writes a credential or secret
   value anywhere (configs reference secret stores; values enter those stores
   through the provider's own mechanism, user-driven).
3. **Deployed means demonstrated.** The run ends with the system observed
   live: the skeleton's end-to-end path exercised against the deployed
   environment (closing the done-when's pending deployed half), CD proven by
   an actual pipeline-driven deploy, restore actually performed once —
   claims are exhibits, observations are evidence.

## When to run

Recommended **early — right after scaffolding**, deploying the walking
skeleton itself: that's the walking-skeleton philosophy (prove the system
deploys before features pile on), and it makes every later feature
continuously deployable. Running later, after features exist, is fully
supported — the same process deploys whatever the repo currently holds, and
Phase 8 is *more* valuable then (accumulated pending-environment NFRs finally
become measurable). Say the trade-off plainly when features exist: this first
push ships N features' worth of system at once, so a failure has many more
candidate causes than an early skeleton deploy would — and the E2E exercise
in Phase 6 covers the whole current suite accordingly.

## Inputs

Defaults; user paths win; source-gated citation throughout.

- **Architecture** — `docs/architecture.md`: the deployment view and the ADRs
  naming the target platform, topology, environments, and data stores (cite
  them). Cross-cutting concepts for the security/observability posture the
  deployment must honor.
- **The repo** — the deployment artifacts scaffolding wrote (Dockerfiles,
  service configs, IaC skeleton, environment parameterization, CI config) and
  `docs/scaffold-notes.md` (what's pending, exact commands, versions).
- **The plan** — `docs/implementation-plan.md`: the walking skeleton's
  done-when (its deployed half is this skill's to close).
- **Acceptance reports** — `docs/features/*/acceptance-report.md` (when
  features exist): the **pending-environment** NFR items now measurable.
- **SRS** — `docs/srs.md`, light touch: NFRs constraining the deployment
  itself (residency, availability topology, compliance), cited by ID.
- **RTM: no writes.** Deployment realizes infrastructure, not requirements.
  Pending-environment measurements are recorded in deployment-notes;
  formally updating acceptance reports and the RTM stays
  acceptance-verification's jurisdiction (re-run it now that the environment
  exists).

## Outputs

1. **The running system** — provisioned environments, deployed build, CD
   wired so the pipeline ships future merges per the architecture's cadence.
2. **`docs/deployment-notes.md`** — the project-owned record: what was
   provisioned (with provider identifiers), environment URLs, the exact
   deploy/rollback commands, secret-store locations (never values), pending-
   environment measurement results, costs observed/expected, deviations from
   the deployment view (and their reasons).
3. **Closed pending items** — the skeleton done-when's deployed half
   demonstrated; pending-environment NFRs measured, with a recommendation to
   re-run acceptance-verification for formal verdicts.
4. **One narrow write into `docs/scaffold-notes.md`** — scaffolding's
   artifact, and the *only* foreign document this skill touches: the pending
   marker it left ("deployed half: pending initial deployment") is closed in
   place, with date and evidence. Nothing else in that file is edited — the
   marker was written to be closed by exactly this run; every other record of
   this deployment lives in deployment-notes.

## Workflow

### Phase 0 — Resume check (always first)

Read `references/deployment-guide.md` (Checkpointing). Look for
`docs/.deployment-progress.md` and live signs of partial provisioning. Partial →
**never blindly re-provision**: summarize what exists (verified against the
provider, not just the tracker), confirm, resume idempotently at the first
pending step. Provisioning found that the tracker can't account for → stop
and ask; this skill never assumes ownership of infrastructure it can't
explain.

### Phase 1 — Ingest and confirm the deployment plan (the money gate)

Extract the deployment contract: target platform (ADR-cited), topology per
the deployment view, environments to create, stores to provision, domain/TLS
expectations, CD trigger (merge? tag?). Elicit only genuine gaps (region,
tier/size — flag architecture-level gaps as candidate amendments). Play back
the **deployment plan**: what gets created where, the rough cost class, what the
first deployed artifact will be — and get explicit confirmation. **Nothing
billable exists before this nod.**

### Phase 2 — Preflight (credentials and tools)

Provider CLI present and **authenticated as the user** — if not, a blocking
ask with pointers to the provider's current auth setup (verified against live
docs), then re-check. Required tools at needed versions. The skill never
touches credential values; authentication is the user's, session-ambient.

### Phase 3 — Provision

Execute the repo's deployment artifacts per environment, in dependency order
(network/foundation → stores → services), checkpointing each unit.
Live-verify CLI specifics before first use. Deviations between the deployment
view and provider reality are handled conform-or-escalate: trivial
realization details → do and record; topology-changing → architecture
amendment path.

### Phase 4 — Configuration and secrets, made real

**First ask how deployed configuration is supplied on this platform**: plain
platform config for everything, the secret store for everything, or the split
(non-secrets in config vars, secrets in the store — the templates' secret
markers are the divide). Recommend the split, honestly: secret stores usually
charge per secret or per access and add rotation/audit machinery `LOG_LEVEL`
doesn't need, while plain config vars for genuinely sensitive values give up
the audit trail. The user's answer wins; record it in deployment-notes so
re-runs and future operators know how the project is wired.

**Then reconcile before deploying**: union the deployable units' config
templates and compare against what the target environment actually has.
Anything missing **blocks the deploy** — with the exact list and the
provider-native steps to set each one. This turns the worst deployment
failure mode (green pipeline, dead service, confusing boot logs) into a
pre-flight message.

Then make them real per the chosen mechanism: create the entries/references,
wire the services to read them, and hand the user the exact provider-native
steps to enter each value **out-of-band**. Verify wiring with a non-secret
canary first. No value ever appears in a file, a note, chat, or a shell
history this skill writes.

### Phase 5 — CD: the pipeline ships

Extend the green CI to actual delivery per the architecture's cadence:
deploy-on-merge to the lower environment, promotion per the deployment view
(tag/manual gate to prod as specified). The proof is empirical: a real
pipeline run observed deploying.

### Phase 6 — Deploy and close the skeleton's done-when

Ship the current build through the pipeline. Then exercise **whatever
end-to-end suite the repo currently holds** against the deployed
environment: always the skeleton's path — the same test, live — and, when
features have extended the suite, the feature E2E paths too (point the suite
at the deployed URL where the harness supports it; otherwise the documented
smoke equivalent, said plainly). State the skeleton result against the plan's
done-when wording: its deployed half, finally demonstrated (record it in
deployment-notes and scaffold-notes' pending item). A red in a *feature's* E2E
path is a deployment finding, not a skeleton failure — report it, and route
a genuine feature failure in the live environment to acceptance-verification
(re-run it there); this skill measures, the auditor rules.

### Phase 7 — Minimum operations (folded in, not deferred)

Read `references/operations-minimum.md`. A deploy without eyes is negligent:
uptime check on each public surface, error alerting wired to a channel the
user actually reads, logs reachable, backups configured **and restore
performed once** (a backup never restored is a hope), TLS/domain per the
architecture. Fuller day-2 operations remain a later concern; this floor is
not optional.

### Phase 8 — Pending-environment NFRs

From the acceptance reports' pending-environment lists (when present): run
the measurements now possible against the real environment (response-time
bounds, availability probes as feasible), record results in deployment-notes with
environment context, and recommend re-running acceptance-verification for
the formal verdict/RTM updates — jurisdiction stays with the auditor.

### Phase 9 — Verify and deliver

Read `references/verification.md` — everything demonstrated live. Then
deliver: URLs per environment, the exact deploy and **rollback** commands,
what it costs (observed/expected), what's pending (items genuinely deferred),
and the handoff: the loop continues with every future feature now
continuously deployable; recommend acceptance-verification re-runs for the
measured NFRs.

## Scope boundaries

Does **not**: choose or change the platform/topology (architecture's job —
gaps go back as amendments); handle credential or secret values; build
features or fix code; perform full day-2 operations (the minimum floor only);
write the RTM; write any other skill's artifacts beyond closing
scaffold-notes' own pending marker (Outputs 4).

## What good looks like

- Everything created traces to the deployment view/ADRs; every deviation is
  recorded with its reason — or escalated.
- The confirmation gate preceded every billable creation; the user was never
  surprised by a resource or a bill.
- The skeleton's done-when reads **fully closed** — local half (scaffolding)
  and deployed half (here), both demonstrated.
- Restore was performed, not assumed. Alerting reached the human once, as a
  test.
- deployment-notes lets a cold session (or a human) operate the deployment:
  URLs, commands, rollback, secret locations — no tribal knowledge.
- A revoked credential or missing tool produced a clear blocking ask — never
  a workaround, never a stored secret.

Files in this skill

  • SKILL.md12.6 KB
  • references/deployment-guide.md6.5 KB
  • references/operations-minimum.md2.7 KB
  • references/verification.md3.9 KB

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…