feat(tech-writing): add client-facing-doc and bid-delivery-summary skills#17
Conversation
…ills Add the internal/external document-transformation pair to the tech-writing plugin (previously an empty placeholder): - client-facing-doc: convert internal/reserved technical documentation into a client-facing deliverable, removing confidential content (costs, rates, effort, internal planning, AI artifacts, drafts, notes) and producing a separate redaction audit in .aidocs/ for verification. - bid-delivery-summary: distill a project assessment/estimation into an internal commercial & delivery summary (INTERNAL USE ONLY) with bid-readiness and delivery-readiness verdicts; effort-only in PD/MD unless an approved cost model is present and explicitly authorized. Both skills run an audience-aware section-plan approval step before generation (include/remove sections by audience) and support English/Italian via language packs. Bump tech-writing to 0.2.0; add CONNECTORS.md (~~knowledge base); update README and marketplace.json. Structural validation (tests/ci/run-structural-tests.sh) and `claude plugin validate ./tech-writing --strict` both pass.
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 1952f3420c
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
| Write the redaction audit to `.aidocs/<doc-name>-redaction-audit.md` using | ||
| `references/audit-template.md`, populated from the audit buffer. |
There was a problem hiding this comment.
Ensure redaction audits are ignored before writing
When this skill runs in a customer project that does not already have .aidocs/ in .gitignore, the redaction audit written here is a normal repo file even though the audit buffer stores snippets of removed costs/internal notes. The .gitignore in this plugin repo does not protect consumer worktrees, so the skill should verify/add an ignore rule or write the audit outside tracked paths before dumping confidential snippets.
Useful? React with 👍 / 👎.
| - Internal-status terms: `TODO`, `FIXME`, `WIP`, `draft`/`bozza`, `internal`/`interno`/`riservato`, | ||
| `confidential`/`riservato` | ||
| - AI/process leakage: prompt fragments, "as an AI", chain-of-thought phrasing ("let me think", | ||
| "step 1: I will"), references to AI tools or generated artifacts |
There was a problem hiding this comment.
Narrow residual markers to process leakage
With customer-facing material that legitimately mentions a customer's internal systems (e.g., internal APIs/networks) or an AI component, this final pass removes those words/references solely because they match internal/interno or “AI tools”. That contradicts the preservation goal for architecture, dependencies, and technical substance and can silently delete valid client content; the scan should target explicit internal-only/process-leakage phrases instead.
Useful? React with 👍 / 👎.
Summary
Adds the internal/external document-transformation pair to the
tech-writingplugin, which was previously an empty placeholder. The two skills are mirror images of each other, both operating on the same kind of source material (project assessments, estimations, technical analyses):client-facing-doc— converts internal/reserved technical documentation into a polished client-facing deliverable. Silently removes confidential content (costs, rates, effort estimates, internal planning, AI artifacts, drafts, internal notes) while preserving and improving the customer-relevant technical substance. Produces the deliverable indocs/outbox/plus a separate redaction audit in.aidocs/(gitignored) so a leak can be caught before sharing.bid-delivery-summary— distills the same kind of source into a concise internal commercial & delivery summary (INTERNAL USE ONLY) for sales, bid, and delivery stakeholders: scope, resources, effort, risks, dependencies, a 4-way bid-readiness verdict, and a delivery-readiness assessment. Effort-only in PD/MD by default; cost figures appear only when an approved cost model is present and explicitly authorized.Both skills:
markitdownMCP tool and offer optional DOCX output viadocument-skills/links-gc-xdoc;docs/outbox/output, self-check rules).Plugin / marketplace changes
tech-writingbumped0.1.0→0.2.0(bothplugin.jsonandmarketplace.json, kept in sync).tech-writing/CONNECTORS.mddeclaring~~knowledge base.Test plan
bash tests/ci/run-structural-tests.sh— all suites pass (frontmatter valid, references resolve, connector matched, versions in sync).claude plugin validate ./tech-writing --strict— passes.client-facing-doc, no confidential content leaks into the deliverable and the audit lists every removal; forbid-delivery-summary, theINTERNAL USE ONLYheader is present, the cost gate asks for confirmation when a rate card is supplied, and the readiness verdicts come from the enumerated sets.