Start here · From a sighting to a personal field guide
From a sighting to a personal field guide
A six-scene customer story: reuse a real Bird domain, build a local notebook, then separate scoped-agent and recognition possibilities from installed capability.
Start here · From a sighting to a personal field guide
From a sighting to a personal field guide
A six-scene customer story: reuse a real Bird domain, build a local notebook, then separate scoped-agent and recognition possibilities from installed capability.
What this view establishes
The architectural commitments
- Prompts are task briefs for an MCP-capable coding assistant, not a guarantee that every LLM can run every tool. Discover the connected tool catalog first.
- Implemented means source exists; observed names a specific proof. Birdwatch has no hosted gateway; the retired Field Notebook pilot is not a live service.
- Customer write admission is in PR #49 merged at bfb10b39. Processing, deployment and tenant administration are different authority surfaces.
Customer storyboard
- 01
01 01 · Choose what matters
birdwatching-journey-1implementedChoose what matters
BirdDomain represents sightings, species and certainty. The current native entry form defaults new sightings to Confirmed; richer uncertainty editing is a next client improvement.
On screenMaya pauses beside a marsh. The frame moves from binoculars to a sighting card: date, count, certainty and notes.
Open the example LLM prompt
I want a personal birdwatching notebook. Inspect the existing BirdDomain schema first. Show me how BirdObservation, BirdSpecies and observationIdentifiesSpecies preserve uncertainty. Propose missing concepts separately; do not invent descriptor IDs or change the schema yet.
What you getAn existing domain inventory, followed by a small, reviewable schema proposal.
- 02
01 02 · Shape the domain
birdwatching-journey-2implementedShape the domain
Repository schema proposals and generation exist. Arbitrary external-domain authoring is still a coding workflow.
On screenA split screen shows the natural-language request beside a schema diff, then generated Swift/Python/web contracts.
Open the example LLM prompt
In an isolated customer repository, inspect the available project and schema tools. Reuse the granted namespace and pinned package dependencies. Model sightings and species from the reviewed design, validate and generate, then show the diff. If a tool supports only an optional string field, report that limit and use a reviewed code edit for anything broader.
What you getA validated proposal, not an automatically published schema. No namespace or release permission is invented.
- 03
01 03 · Use the notebook
birdwatching-journey-3implementedUse the notebook
Birdwatch has native entry, library, SQLite storage and shared inspection components. Its hosted front door is unconfigured.
On screenMaya saves an observation, then opens the library and follows its species relationship. Local storage is labeled on screen.
Open the example LLM prompt
Build the existing Birdwatch macOS app for a disposable local demonstration. Keep it disconnected from production. Show observation entry, the saved record and its relationships. Preserve the source app defaults and report whether the demo used local storage or a verified authority.
What you getA native local app. Customer-runtime MCP acceptance for this Bird schema is a separate installation task.
- 04
01 04 · Ask an assistant to help
birdwatching-journey-4plannedAsk an assistant to help
The customer framework has scoped reads and locally proven write admission; a Bird runtime needs its own schema closure and acceptance.
On screenMaya approves a short-lived assistant. The screen separates the proposed note from the member-owned saved record.
Open the example LLM prompt
Once this Bird environment is accepted, use my privately configured delegation. Inspect tools/list and schema descriptors. Find my possible sightings from today and propose clearer notes without upgrading certainty. With a write delegation, apply only the approved note edits; then show the resulting member-owned records and attribution.
What you getField Notebook proves the authority mechanism. Bird-specific installation, MCP journey and hosted acceptance remain to be done.
- 05
01 05 · Add assisted identification
birdwatching-journey-5plannedAdd assisted identification
Processing graph plan/publish and bindings exist on the processing gateway; no bird recognizer is shipped by this story.
On screenAudio flows into a proposed recognizer, then candidate species and confidence, then a human review checkpoint.
Open the example LLM prompt
On a gateway that exposes processing tools, inspect its catalog. Draft a Source/Map/Sink graph for audio-to-candidate-species only if an installed worker supports it. Otherwise list the missing worker and evidence contract. Keep candidate identifications separate from confirmed sightings; do not publish or activate the graph without reviewing the exact plan.
What you getA graph proposal and an explicit missing-worker list. Customer MCP has no processing tools or media-resource writes.
- 06
01 06 · Grow into a field guide
birdwatching-journey-6plannedGrow into a field guide
A shared birding club, offline media sync and administrative delegation need further product and operational acceptance.
On screenA phone, browser and club map share a visual language. Private sightings remain distinct from approved shared observations.
Open the example LLM prompt
Design a Birdwatch web companion and a native capture flow using the pinned client contracts. Preserve Possible, Probable and Confirmed. Separate private notes from a proposed club-sharing workflow. Produce a client PR and tests; list missing hosting, media sync, cross-member sharing and tenant-admin capabilities instead of simulating them as live.
What you getClient code can be authored now; club sharing and fully hosted end-to-end automation remain explicit follow-ups.
The customer journey, step by step
Connections and evidence
Open the 5-relationship source key
Numbers set an explanatory reading order. They do not measure runtime timing.
Connections and evidence
Open the 5-relationship source key
- 01declared
Choose what matters→Shape the domain
Next reviewed step
- 02declared
Shape the domain→Use the notebook
Next reviewed step
- 03declared
Use the notebook→Ask an assistant to help
Next reviewed step
- 04declared
Ask an assistant to help→Add assisted identification
Next reviewed step
- 05declared
Add assisted identification→Grow into a field guide
Next reviewed step
Connections and evidence
5 directed, source-backed relationships
Numbers set an explanatory reading order. They do not measure runtime timing.
- 01declared
Choose what matters→Shape the domain
Next reviewed step
- 02declared
Shape the domain→Use the notebook
Next reviewed step
- 03declared
Use the notebook→Ask an assistant to help
Next reviewed step
- 04declared
Ask an assistant to help→Add assisted identification
Next reviewed step
- 05declared
Add assisted identification→Grow into a field guide
Next reviewed step
What this view establishes
The architectural commitments
- Prompts are task briefs for an MCP-capable coding assistant, not a guarantee that every LLM can run every tool. Discover the connected tool catalog first.
- Implemented means source exists; observed names a specific proof. Birdwatch has no hosted gateway; the retired Field Notebook pilot is not a live service.
- Customer write admission is in PR #49 merged at bfb10b39. Processing, deployment and tenant administration are different authority surfaces.
Follow the live system
Move from explanation to inspection
The Atlas is static and source-backed. The Observatory shows authenticated environment state.
9 repository sources behind this view
distribution/project-tools/src/neostory_project_tools/mcp.pydocs/customer-agent-journeys.mddocs/platform-business-cases.mddocs/releases/evidence/customer-data-mcp-phase4/runtime.jsondomains/bird/Apps/Birdwatch/Sources/BirdwatchAppModel.swiftdomains/bird/Apps/Birdwatch/Sources/BirdwatchRootView.swiftdomains/bird/schema/bird-domain.schema-package.jsonmcp/src/neostory_processing_mcp/server.pyplatform/customer-runtime/customer_runtime.py