Shipyard's internal requirements intake for non-engineer contributors (support/ops) — turn a pasted chat log or verbal problem report into a five-section intent
复制下面这句话,粘贴给 Claude Code、Codex、Cursor 等 AI 编程工具,它会读取安装说明并在你确认后完成安装。
请阅读 https://ai.atlankj.com/install/asset/gh-intent-50a3f53020da ,按照其中的说明把「intent」安装到你(当前 AI 工具)中。执行前先告诉我将运行的命令和写入的位置,等我确认。
查看 AI 将读取的安装说明正在读取 GitHub 原文…
内容来自 GitHub 原始文件,由原作者维护。在 GitHub 查看
Intent is the shipyard's internal intake: support/ops staff see product problems first but cannot write engineering specs. The intent skill converts their conversation into a goal-level YAML+markdown artifact that an owner reviews and signs, so engineering receives a fog-free mission. It stands on the verifiability boundary — the agent asks, records, and drafts; humans submit, verify, and sign.
Design provenance: every decision here was pinned by a wayfinder map (7 tickets) and walked end-to-end in a demo repository before implementation.
待确认 items.1 是; 2 不确定). Unknown answers are recorded as 待确认 and pushed into open questions — never pressed until guessed.待确认 and counted as open questions无docs/intents/<slug>/intent.md (template below) at status: draft; the contributor confirms wording before any submission.---
intent: <slug>
title: <one-line title>
author: <name (role)>
date: <YYYY-MM-DD>
status: draft | in-review | accepted | rejected
round: <tracker review round>
---
## 问题
<observable phenomena, no solution>
## 目标
one sentence, no qualifiers
## 用户和系统
<who the users are, which systems, real names; unknowns as 待确认>
## 约束
<boundaries, non-goals; cite Rules pillar files when a constraint comes from them>
## 未决问题
- [阻塞|非阻塞] <question> ← agent suggests, product owner finalizes
The test for 阻塞: "can the spec still be approved without answering it?" No → blocking; yes → non-blocking (tracked, may ride into development). The drafting agent suggests grades; the product owner finalizes at spec approval.
Review runs on the repo's tracker — the tracker is the only record source; intent.md frontmatter mirrors status only. One record file per Intent, rounds accumulate inside it. Required fields per record: signer, date, verdict, link to intent.md, round, rejection reason (mandatory on reject).
status: in-review)Rejected → revise → resubmit in the same file under the next round number. History stays traceable.
An accepted intent (status: accepted) is a valid mission brief. Launch's spec synthesis then follows the four-step contract:
docs/intents/<slug>/intent.md (must be accepted, latest round)CLAUDE.md + docs/standards/ + docs/business/)Intent open questions carry into the spec verbatim, keeping their pending status.
New information after acceptance (typically surfaced by the first spec) is an amendment: anyone may initiate, the submitter signs, and it always re-enters full review as a new round — no minor-change exemption. An intent change marks the generated spec stale; the spec is regenerated from the new intent and re-approved. No separate amendment record type: rounds carry it.
Conflict conclusions in the spec's pending section follow precedent-based routing: case-local answers stay in the spec; conclusions that will bind later Intents sediment into the Rules pillar (docs/business/ for business rules, docs/standards/ for behavior rules); hard-to-reverse technical tradeoffs become ADRs. Never double-write; never defer archiving. The product owner decides whether a conclusion is precedent-setting; the tech lead advises the destination.