technical-story
Draft Jira-formatted Technical Stories (Infrastructure and Application sub-types) with Acceptance Criteria, for backlog items that describe a system or…
Skill by craigspaterson
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/craigspaterson-technical-story
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: design, backend, devops, writing
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. 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/technical-story
What's inside
- Skill name
technical-story- Description
- Draft Jira-formatted Technical Stories (Infrastructure and Application sub-types) with Acceptance Criteria, for backlog items that describe a system or engineering concern rather than a user experience. Use this skill whenever the user wants to write, create, draft, refine, or improve a technical story, enabler story, engineering story, infra story, or any PBI describing IaC provisioning, GitHub Actions / CI-CD workflows, Cloud Run or other cloud resource deployment, IAM / service-account configuration, Artifact Registry publishing, or backend service/function logic. Trigger even for casual phrasing like "write a story for provisioning a Cloud Run service", "create a ticket for the OpenTofu apply workflow", "story for the IAM bindings", or "turn this infra task into a story". Use the user-story skill instead when the PBI describes a human-facing feature, UI, or classic user experience. If unsure which kind of story applies, this skill includes guidance to decide.
- License
- MIT
- Instructions
- 356 lines in SKILL.md · view on GitHub
Files (1)
- SKILL.md
SKILL.md (first lines)
# Technical Story Skill
Draft polished, Jira-ready Technical Stories with Acceptance Criteria, for backlog
items that describe system or engineering concerns rather than a human user experience.
This skill complements the `user-story` skill. A User Story centres on a human persona
and the value they get; a Technical Story centres on the **system or platform** and the
technical outcome (reliability, security, consistency, observability, testability). The
consumer of the capability is the platform itself, so the story statement names the
system, not a human role.
---
## Step 1 — Confirm This Is a Technical Story
Use this skill when the PBI describes an engineering concern with no direct human actor.
If the item describes a human-facing feature, UI, or classic experience, use the
`user-story` skill instead.
| Signal in the request | Story type |
|---|---|
| IaC resource provisioning (Cloud Run, GCS, Pub/Sub, LB) | **Technical** |
| IAM / service account / Workload Identity configuration | **Technical** |
| GitHub Actions / CI-CD / OpenTofu apply / deploy workflow | **Technical** |
| Artifact Registry publish, prune, or versioning | **Technical** |
| Backend handler, function logic, message processing | **Technical** |
| API endpoint a human directly calls in a journey | User Story |
| Dashboard, screen, form, or UI feature | User Story |
| Auth flow described from the user's perspective | User Story |
If genuinely mixed (e.g. "let users export a report" where the export job is the work),
split it: a User Story for the experience and a Technical Story for the enabling job,
linked as dependencies.
---
## Step 2 — Choose the Sub-Type
Every Technical Story is one of two sub-types. Pick based on the primary concern:
- **Infrastructure** — provisioning, configuration, access, pipelines. The deliverable
is a resource, binding, or workflow that exists and behaves correctly. Owners are
typically platform/infra engineers. Definition of Done is verified in the cloud
console, the IaC plan, or the pipeline run.
- **Application** — logic that runs *on* the infrastructure. The deliverable is correct
behaviour: inputs handled, outputs produced, failures managed, logs emitted. Owners
are typically application engineers. Definition of Done is verified by tests and
observed runtime behaviour.
A single capability often needs **both**: one Infrastructure story to provision the
Cloud Run service, one Application story for its handler logic. When that is the case,
produce both and link them — the Infrastructure story typically blocks the Application
story's integration testing.
---
## Output Format
Use this exact structure. It mirrors the `user-story` skill's format so the two sit
side by side, with two differences: the `Type` line names the sub-type, and the story
statement names the **system/platform**, not a persona.
```
**Title:** [Short, imperative-phrased summary — max 10 words]
**Type:** Technical Story — [Infrastructure / Application]
**Priority:** [Critical / High / Medium / Low]
**Story Points:** [1 / 2 / 3 / 5 / 8 / 13 — Fibonacci scale]
---
**Technical Story**
As the [platform / service / system name],
I need [capability or resource],
So that [technical outcome — reliability, security, consistency, observability].
---
**Acceptance Criteria**
---
**AC1 - [Criterion Name]**
Given [system state or precondition],
When [action, trigger, or event],
Then [observable, verifiable outcome].
---
**AC2 - [Criterion Name]**
Given [system state or precondition],
When [action, trigger, or event],
Then [observable, verifiable outcome].
---
[Add as many AC[N] - Name blocks as needed — minimum 3, maximum 8]
---
**Out of Scope**
- [What resource, logic, concern, or environment is explicitly excluded]
**Dependencies**
- [Prerequisite APIs, modules, service accounts, linked stories — or "None"]
**Notes**
[Naming conventions, error-handling decisions, open questions, per-environment split.]
```
---
## Writing Guidelines
### Title
- Imperative verb ("Provision", "Implement", "Configure", "Publish", "Enable").From craigspaterson/agent-skills, MIT.
More from craigspaterson/agent-skills
- 0.563score
push-to-ado
craigspaterson
Uploads a drafted User Story or Technical Story to Azure DevOps as a work item, populating Title, Description, Acceptance Criteria, Story Points, Priority…
SkillBFreshness: B★ 2Claude Code +9 - 0.563score
start-story
craigspaterson
Activates a work item or issue and creates the feature branch in one step.
SkillBFreshness: B★ 2Claude Code +9 - 0.557score
resolve-copilot-review
craigspaterson
Triage GitHub Copilot's automated PR review comments, fix the confirmed issues, and resolve the review threads.
SkillBFreshness: B★ 2Claude Code +9 - 0.557score
create-pr
craigspaterson
Create or update a GitHub pull request using the repo's own .github/pull_request_template.md as the body structure, with a Conventional Commits-style title…
SkillBFreshness: B★ 2Claude Code +9 - 0.507score
terraform-docs-inject
craigspaterson
Generate Terraform docs and inject them into terraform/README.md using terraform-docs markdown table output-mode inject.
SkillCFreshness: C★ 2Claude Code +9 - 0.507score
user-story
craigspaterson
Draft Jira-formatted User Stories with Acceptance Criteria.
SkillCFreshness: C★ 2Claude Code +9
Signals
- Stars
- 2
- Forks
- 0
- Open issues
- 0
- Last commit (this folder)
- Jun 7, 2026 (4 months ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- MIT
- Repository
- github.com/craigspaterson/agent-skills
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from craigspaterson
- 0.563score
push-to-ado
craigspaterson
Uploads a drafted User Story or Technical Story to Azure DevOps as a work item, populating Title, Description, Acceptance Criteria, Story Points, Priority…
SkillBFreshness: B★ 2Claude Code +9 - 0.563score
start-story
craigspaterson
Activates a work item or issue and creates the feature branch in one step.
SkillBFreshness: B★ 2Claude Code +9 - 0.557score
resolve-copilot-review
craigspaterson
Triage GitHub Copilot's automated PR review comments, fix the confirmed issues, and resolve the review threads.
SkillBFreshness: B★ 2Claude Code +9 - 0.557score
create-pr
craigspaterson
Create or update a GitHub pull request using the repo's own .github/pull_request_template.md as the body structure, with a Conventional Commits-style title…
SkillBFreshness: B★ 2Claude Code +9 - 0.507score
terraform-docs-inject
craigspaterson
Generate Terraform docs and inject them into terraform/README.md using terraform-docs markdown table output-mode inject.
SkillCFreshness: C★ 2Claude Code +9 - 0.507score
user-story
craigspaterson
Draft Jira-formatted User Stories with Acceptance Criteria.
SkillCFreshness: C★ 2Claude Code +9
Cite this page
technical-story skill. Agent Mart. https://agentmart.dev/skills/craigspaterson-technical-story (last updated 2026-10-24)