From 9b91b9bb002f01d2572ba0ba0be1e5a4118bfe99 Mon Sep 17 00:00:00 2001 From: dadachi Date: Mon, 25 May 2026 17:20:09 +0900 Subject: [PATCH] docs: add Sentova as a worked custom-name adapt example Document the household pest-monitor "Sentova" spec across the three doc surfaces as a worked example of the custom-project-name path. Verified 2026-05-25 (agent 0.2.1, VISUAL=0): generate overall PASS, walked on iOS + Android via the plugin's generate-app + walk-app skills. - plugin/README.md: full generate -> walk-app session with the project name passed in plain language ("project name is Sentova"). - README.md: Usage example tying --project-name to the plugin/MCP plain-language form; kept out of the VISUAL=2 matrix table. - docs/SPEC.md: add the household pest-sighting log to the SS4 adapt-path variants. Framed accurately as an *adapt* (keeps the ItemTag toggle, renamed/extended), not a replace; planner rename targets vary run to run, so mappings are cited as one run's pick. --- README.md | 6 ++++++ docs/SPEC.md | 2 +- plugin/README.md | 17 +++++++++++++++++ 3 files changed, 24 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index d769565..779d8c8 100644 --- a/README.md +++ b/README.md @@ -117,6 +117,12 @@ npx nativeapptemplate-agent "a walk-in clinic queue for small veterinary practic npx nativeapptemplate-agent "a restaurant waitlist for casual dining" npx nativeapptemplate-agent "a personal task tracker with due dates" +# Name the project explicitly (sets display name + output slug, independent of the +# domain rename). The plugin/MCP path accepts the same intent in plain language — +# "…detection. project name is Sentova." — mapped to the projectName argument. +npx nativeapptemplate-agent "a two-device home monitor for household pest detection" --project-name="Sentova" +# → out/sentova/ · Sentova.xcodeproj · "Sentova API"; adapts ItemTag (e.g. Shop→Household, ItemTag→Sighting) + # Generated output appears under ./out// tree ./out/clinic-queue/ # ├── rails/ ← Rails 8.1 API, git-initialized, buildable diff --git a/docs/SPEC.md b/docs/SPEC.md index d70f3d7..6796ca6 100644 --- a/docs/SPEC.md +++ b/docs/SPEC.md @@ -110,7 +110,7 @@ The agent performs three clean operations against this substrate. **Operation 2 — Adapt or replace the domain module.** -- *Adapt path* (walk-in-queue variants like clinic queue, restaurant waitlist, salon walk-ins): keep `ItemTag`, rename to the variant's terminology, preserve the two-state toggle (`Idled` ↔ `Completed`) and its transition logic. Variants that genuinely need a three-state lifecycle (e.g., a clinic queue wanting a distinct "in-service" state) extend the state machine rather than replace it — the planner decides whether to preserve, extend, or replace the states based on the NL spec. +- *Adapt path* (walk-in-queue variants like clinic queue, restaurant waitlist, salon walk-ins, household pest-sighting log): keep `ItemTag`, rename to the variant's terminology, preserve the two-state toggle (`Idled` ↔ `Completed`) and its transition logic. Variants that genuinely need a three-state lifecycle (e.g., a clinic queue wanting a distinct "in-service" state) extend the state machine rather than replace it — the planner decides whether to preserve, extend, or replace the states based on the NL spec. - *Replace path* (non-queue SaaS like task tracker, simple CRM, inventory): strip `ItemTag` end-to-end, insert a new primary resource with equivalent coverage (migration + model + controller + policy + serializer + iOS/Android screens + state transitions if applicable). The planner sub-agent decides which path to run based on the NL spec. diff --git a/plugin/README.md b/plugin/README.md index 5d4ff90..26ecf92 100644 --- a/plugin/README.md +++ b/plugin/README.md @@ -69,6 +69,23 @@ Then in the session: /nativeapptemplate-agent:generate-app a walk-in queue for a barbershop ``` +The two skills compose end-to-end — generate, then walk what you generated. A +full session, including a **custom project name passed in plain language**: + +``` +/nativeapptemplate-agent:generate-app a two-device home monitor for household pest detection. project name is Sentova. +/nativeapptemplate-agent:walk-app sentova ios +/nativeapptemplate-agent:walk-app sentova android +``` + +The `project name is Sentova` clause sets the display name and output slug +(`out/sentova/`, `Sentova.xcodeproj`, `Sentova API`) independently of the domain +rename the planner chooses. This spec is an **adapt** of the queue toggle — it +keeps `ItemTag` and renames it (one run: `Shop → Household`, `Shopkeeper → +Resident`, `ItemTag → Sighting`, states `Idled → Active` / `Completed → +Resolved`); the planner's exact targets vary run to run. Verified 2026-05-25 +(agent 0.2.1): both specs generate with overall PASS, walked on iOS + Android. + After editing plugin files, run `/reload-plugins` to pick up changes. Confirm the skill is loaded via `/help` and the MCP server via `/mcp`.