@antoneeo/mkt-agentic-sdlc-skill 0.18.0 → 0.20.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +10 -0
- package/README.md +2 -0
- package/gemini-extension.json +1 -1
- package/package.json +6 -1
- package/skills/mkt-agentic-sdlc/SKILL.md +4 -3
- package/skills/mkt-agentic-sdlc/docs_site/app.js +1127 -0
- package/skills/mkt-agentic-sdlc/docs_site/index.html +17 -0
- package/skills/mkt-agentic-sdlc/docs_site/strings.js +323 -0
- package/skills/mkt-agentic-sdlc/docs_site/style.css +288 -0
- package/skills/mkt-agentic-sdlc/scripts/docs_site.py +1362 -0
- package/skills/mkt-agentic-sdlc/scripts/knowledge.py +20 -6
- package/skills/mkt-agentic-sdlc/scripts/mkt_check.py +9 -0
- package/skills/mkt-agentic-sdlc/scripts/sdlc_core.py +305 -0
- package/skills/mkt-agentic-sdlc/templates.md +12 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,15 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## [0.20.0] - 2026-10-18
|
|
4
|
+
|
|
5
|
+
### Added
|
|
6
|
+
- F-072: `scripts/docs_site.py --root <project>` writes a static, read-only website of what the agent reads in the project: what it is (reading guide, Vision, rules, documents), its open work with each next step verbatim, and — with a knowledge base — a map of topics, the facts with the exact passage each comes from, what an inferred fact rests on, and the source documents. It opens from disk with the network off, writes outside the docs root, changes nothing in it, and selects, ranks or recommends nothing. Each analysis opens with the chain the agent works through — Vision, use cases, flows and interfaces, risks, solution study, design and tests, merge brief and E2E script, Diary — the Vision's North Star is shown above the home page, and the guides have a page of their own: the guide router, the operative guides with when to read each, and the code-comprehension guides. The chronology lists the dated events the documents declare (Diary entries, spike outcomes, request-record entries, review-log rows, decision records, dated project notes, notes and sources received), most recent first, read with the same F-073 readers `validate` uses. Shared by the four packages (generator, page and battery are byte-identical spine files).
|
|
7
|
+
|
|
8
|
+
## [0.19.0] - 2026-10-17
|
|
9
|
+
|
|
10
|
+
### Changed
|
|
11
|
+
- F-073 (shared validator and doctrine): one written form for a dated entry, `**YYYY-MM-DD — label.**`, is taught for spike outcomes and project notes that record an event, and shared readers let a chronology list those events the same way the validator reads them. Two advisories reach marketing, and neither fails a build, not even `--strict`: a HANDOFF `next:` longer than 240 characters on a `level: L3` file updated on or after 2026-10-18 (`next:` now holds only the next step), and, in `check`, an open L3 unit whose id another branch or tag uses for a different analysis. That id check identifies a unit by its ANALYSIS file; a marketing request record names none, so an engagement without an ANALYSIS is not checked yet. The doctrine now says to choose a new id after fetching, and that a session sharing a checkout with another session works in its own git worktree. Advisories print as `[advisory]` lines and never count toward the exit code.
|
|
12
|
+
|
|
3
13
|
## [0.18.0] - 2026-10-17
|
|
4
14
|
|
|
5
15
|
### Changed
|
package/README.md
CHANGED
|
@@ -27,6 +27,8 @@ Turns an AI agent into a disciplined marketing strategist that produces a profes
|
|
|
27
27
|
3. **Adversarial CMO review** — an independent, fresh-context reviewer attacks the strategy before the user sees it (generic-positioning swap test, untraced claims, orphan tactics).
|
|
28
28
|
4. **Verbatim request record** — every E3 engagement starts `audit/requests/REQUEST_[engagement].md` before Wave 1: the client's own words and every later decision, append-only and redacted for secrets; owner-given FACT rows and the plan cite its entries, and reviews check client statements against it.
|
|
29
29
|
|
|
30
|
+
The **docs site** (`scripts/docs_site.py --root <project> [--open]`) writes a static, offline, read-only website of what the agent reads in the project — reading guide, Vision, rules, documents, open work with each next step, and, with a knowledge base, the topic map, each fact with its exact source passage, and the source documents. It is written outside the docs root (`mkt_docs/` or `ai_docs/`); nothing is ranked or recommended.
|
|
31
|
+
|
|
30
32
|
The agent asks the user only for facts the user uniquely owns (product, price, budget, capacity); everything else — market sizing, competitor analysis, channel benchmarks — is derived from real web research.
|
|
31
33
|
|
|
32
34
|
## Install
|
package/gemini-extension.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "mkt-agentic-sdlc",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.20.0",
|
|
4
4
|
"description": "Evidence-First marketing planning protocol with engagement triage, SOSTAC workflow, evidence ledger and optional devPNT integration.",
|
|
5
5
|
"author": "Antonio Pinto (https://github.com/Antoneeo)"
|
|
6
6
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@antoneeo/mkt-agentic-sdlc-skill",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.20.0",
|
|
4
4
|
"description": "Evidence-First marketing planning protocol for Claude Code, Gemini CLI, Google Antigravity and Codex: engagement triage, SOSTAC workflow, evidence ledger, mechanical validator and optional devPNT integration.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"claude-code",
|
|
@@ -34,6 +34,11 @@
|
|
|
34
34
|
"skills/mkt-agentic-sdlc/review.md",
|
|
35
35
|
"skills/mkt-agentic-sdlc/scripts/sdlc_core.py",
|
|
36
36
|
"skills/mkt-agentic-sdlc/scripts/knowledge.py",
|
|
37
|
+
"skills/mkt-agentic-sdlc/scripts/docs_site.py",
|
|
38
|
+
"skills/mkt-agentic-sdlc/docs_site/index.html",
|
|
39
|
+
"skills/mkt-agentic-sdlc/docs_site/app.js",
|
|
40
|
+
"skills/mkt-agentic-sdlc/docs_site/style.css",
|
|
41
|
+
"skills/mkt-agentic-sdlc/docs_site/strings.js",
|
|
37
42
|
"skills/mkt-agentic-sdlc/memory.md",
|
|
38
43
|
"skills/mkt-agentic-sdlc/routing.md",
|
|
39
44
|
"skills/mkt-agentic-sdlc/guides.md",
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: mkt-agentic-sdlc
|
|
3
|
-
version: 0.
|
|
3
|
+
version: 0.20.0
|
|
4
4
|
description: Evidence-First marketing planning protocol with engagement triage, SOSTAC workflow, evidence ledger, adversarial CMO review, a complete Standalone mode and optional symbiosis with devPNT. Use for marketing plans, go-to-market strategy, campaign planning and market research.
|
|
5
5
|
author: Antonio Pinto (https://github.com/Antoneeo)
|
|
6
6
|
copyright: (c) 2026 Antonio Pinto
|
|
@@ -18,6 +18,7 @@ Support files in the skill directory:
|
|
|
18
18
|
- `templates.md`: templates for every artifact and deliverable.
|
|
19
19
|
- `review.md`: the family's shared review discipline (independence ladder, rounds, log). The marketing-specific attack surface — swap test, untraced numbers, orphan tactics, missing kill/scale — lives in `frameworks.md`'s falsification rules; the adversarial CMO review applies them through `review.md`'s procedure.
|
|
20
20
|
- `scripts/mkt_check.py` + `scripts/sdlc_core.py`: the mechanical validator (`check`, `validate`, `ledger`, `benefit`, `budget`, `funnel`, `trace`, `index`, plus the spine's `stale`/`mark`/`gate`/`orient`/`plan`/`migrate`). Keep the entry point, `scripts/sdlc_core.py` and `scripts/knowledge.py` together; the last supplies common memory and KB integrity.
|
|
21
|
+
- `scripts/docs_site.py --root <project>`: writes an offline, read-only site of what the agent reads here, for the user to browse.
|
|
21
22
|
- `hybrid.md`: the devPNT seam — the authoritative hierarchy, the ownership matrix (which artifact is mastered where), and the Hybrid rules. Read it when the `devpnt_*` tools point at this project; a Standalone engagement never needs it.
|
|
22
23
|
- `ENFORCEMENT.md`: optional setup for CI and hooks.
|
|
23
24
|
|
|
@@ -79,7 +80,7 @@ One event, one destination: when the trigger fires and the document does not exi
|
|
|
79
80
|
|---|---|---|
|
|
80
81
|
| `audit/requests/REQUEST_[engagement].md` | Every E3, the moment the level is declared — before Wave 1 and the Vision Gate: R1 quotes the client's opening words verbatim; every later statement of theirs that settles something (answer, approval, budget, ruling) is appended before acting on it. Append-only, never deleted; artifacts and owner-given `FACT` rows cite its entries (`templates.md`). | 1 → 9 |
|
|
81
82
|
| `audit/handoff.md` (workstream registry) | **Never by hand — generated by `mkt_check.py index` from the `HANDOFF_*.md` sources**, and `validate` errors when the two disagree. Regenerate at every closure and at session end; the `Date:` header is derived, so no writer touches it. Inventory for lookup, never a work board. | 9 / session end |
|
|
82
|
-
| `audit/HANDOFF_[engagement].md` | **One per OPEN engagement, with or without volatile state** — it is the authored home of that engagement's registry row (frontmatter `workstream`/`level`/`branch`/`status`/`since`/`next`/`details`/`updated`), so no file means no row. DELETED at closure — deleting it *is* removing the row. | 9 / session end |
|
|
83
|
+
| `audit/HANDOFF_[engagement].md` | **One per OPEN engagement, with or without volatile state** — it is the authored home of that engagement's registry row (frontmatter `workstream`/`level`/`branch`/`status`/`since`/`next`/`details`/`updated`), so no file means no row. Its `next:` is the next concrete step in one sentence; what happened, and the state of the work, go to the Diary as a dated entry. DELETED at closure — deleting it *is* removing the row. | 9 / session end |
|
|
83
84
|
| `audit/project_notes.md` | A note true for the whole engagement portfolio rather than one engagement. Appended verbatim to the generated registry, so regenerating cannot destroy it. | 9 / session end |
|
|
84
85
|
| `audit/handoff.md` — converting an existing project | **Lazily, at the first write — and then ALL AT ONCE.** Converting one row at a time is the state that loses the others, so `index` refuses to write while anything in the file is unaccounted for and names it. | 9 / session end |
|
|
85
86
|
| `audit/HANDOFF_[engagement].md` | Session ends with that engagement unfinished AND there is volatile resume state. Ephemeral, deleted at closure. | 8 / 9 / session end |
|
|
@@ -167,7 +168,7 @@ Deliverable language: ask for (or infer) the target market's language in Discove
|
|
|
167
168
|
- `mkt_check.py budget && mkt_check.py funnel && mkt_check.py trace` must pass. A tactic that serves no objective is deleted or the objective set is revisited — never silently kept.
|
|
168
169
|
|
|
169
170
|
### 8. Action
|
|
170
|
-
- **Isolate the work (Branch/worktree hygiene).** Execution rewrites plan documents other people are reading: do it on a branch or a worktree, never directly on the shared plan.
|
|
171
|
+
- **Isolate the work (Branch/worktree hygiene).** Execution rewrites plan documents other people are reading: do it on a branch or a worktree, never directly on the shared plan. A session that may run while another session uses the same checkout works in its **own git worktree**, and never switches branch, stashes, resets or runs `index` in a checkout another session may be using. Parallel work also shares ids: choose a new unit's id **after fetching**, as the first id free on every branch and tag the checkout can see.
|
|
171
172
|
- **Consult (before acting)**: **consult the guide router** for a guide covering the task and read it first (the consult trigger, `guides.md` §0). A targeted description match, not a blanket read.
|
|
172
173
|
- **Opt-in subagent execution**: for an approved plan, the work MAY be executed via subagents per `dispatch.md`; default stays same-session. `dispatch.md` also carries the family-wide **delegation boundary** (what may be delegated at all, and what never may) — that section is not gated by the opt-in trigger and applies at any level, dispatch or no dispatch.
|
|
173
174
|
- Draft `ACTION_90D.md`: sequenced 90-day plan (what starts when, owner, dependency), first 2 weeks day-level, rest weekly.
|