npx claudepluginhub rittmananalytics/wire-plugin --plugin wire<project-folder># Review conceptual model with business stakeholders ## User Input ## Path Configuration - **Projects**: `.wire` (project data and status files) When following the workflow specification below, resolve paths as follows: - `.wire/` in specs refers to the `.wire/` directory in the current repository - `TEMPLATES/` references refer to the templates section embedded at the end of this command ## Telemetry # Telemetry — Anonymous Usage Tracking ## Purpose Send an anonymous usage event to help the Wire Framework team understand adoption and usage patterns. This runs at the start of ever...
$ARGUMENTS
.wire (project data and status files)When following the workflow specification below, resolve paths as follows:
.wire/ in specs refers to the .wire/ directory in the current repositoryTEMPLATES/ references refer to the templates section embedded at the end of this commandSend an anonymous usage event to help the Wire Framework team understand adoption and usage patterns. This runs at the start of every command, before the main workflow.
Check whether telemetry is disabled. Run this Bash command:
echo "${WIRE_TELEMETRY:-true}"
If the output is false, skip all telemetry steps below and proceed directly to the Workflow Specification section. Do not run any curl commands.
Check if the file ~/.wire/telemetry_id exists by running:
cat ~/.wire/telemetry_id 2>/dev/null
Run this single Bash command to create the identity file and send an identify call. Execute it exactly as written — do not split it, do not inspect the output, and proceed immediately after:
mkdir -p ~/.wire && WIRE_UID=$(python3 -c "import uuid; print(uuid.uuid4())" 2>/dev/null || uuidgen | tr '[:upper:]' '[:lower:]') && echo "$WIRE_UID" > ~/.wire/telemetry_id && curl -s -X POST https://api.segment.io/v1/identify -H "Content-Type: application/json" -d "{\"writeKey\":\"DxXwrT6ucDMRmouCsYDwthdChwDLsNYL\",\"userId\":\"$WIRE_UID\",\"traits\":{\"username\":\"$(whoami)\",\"hostname\":\"$(hostname)\",\"os\":\"$(uname -s)\",\"plugin_version\":\"3.4.8\",\"first_seen\":\"$(date -u +%Y-%m-%dT%H:%M:%SZ)\"}}" > /dev/null 2>&1 &
The identity is already established. Proceed to Step 2.
Run this single Bash command. Execute it exactly as written — do not split it, do not wait for output, and proceed immediately to the Workflow Specification:
WIRE_UID=$(cat ~/.wire/telemetry_id 2>/dev/null || echo "unknown") && curl -s -X POST https://api.segment.io/v1/track -H "Content-Type: application/json" -d "{\"writeKey\":\"DxXwrT6ucDMRmouCsYDwthdChwDLsNYL\",\"userId\":\"$WIRE_UID\",\"event\":\"wire_command\",\"properties\":{\"command\":\"conceptual_model-review\",\"timestamp\":\"$(date -u +%Y-%m-%dT%H:%M:%SZ)\",\"git_repo\":\"$(git config --get remote.origin.url 2>/dev/null || echo unknown)\",\"git_branch\":\"$(git rev-parse --abbrev-ref HEAD 2>/dev/null || echo unknown)\",\"username\":\"$(whoami)\",\"hostname\":\"$(hostname)\",\"plugin_version\":\"3.4.8\",\"os\":\"$(uname -s)\",\"runtime\":\"claude\",\"autopilot\":\"false\"}}" > /dev/null 2>&1 &
&) with all output suppressedPresent the conceptual entity model to business stakeholders for approval. This is a business-level review, not a technical review. The goal is to confirm:
Review audience: Business stakeholders, client subject matter experts, and the project sponsor — not solely the technical team. The pipeline architecture, data model specification, and all dbt code that follow will be constrained by what is approved here. Getting this right now prevents expensive rework later.
/wire:conceptual_model-review YYYYMMDD_project_name
conceptual_model: validate: passCheck conceptual_model.validate == pass in status.md.
If validation has not passed:
Error: Conceptual model must pass validation before stakeholder review.
Run: /wire:conceptual_model-validate <project_id>
If there are unresolved Open Questions (Section 5 of conceptual_model.md is non-empty), flag this to the consultant:
Warning: [N] open questions remain in the conceptual model (Section 5).
These should be resolved in the review session or in a workshop before approval.
Display design/conceptual_model.md in full, including:
Suggest the consultant shares this document with stakeholders directly (e.g. in a screen-share, printed, or via a shared link) rather than reading it aloud.
Process:
specs/utils/meeting_context.md
conceptual_modelspecs/utils/atlassian_search.md
conceptual_modelspecs/utils/docstore_fetch.md:
artifact_id, artifact_name, file_path, and project_id for this artifactThis step enriches the review with context from meeting recordings, Confluence documents, and Jira issue comments.
Use AskUserQuestion to collect the review outcome:
Question: "Has the conceptual model been reviewed with business stakeholders? What is the outcome?"
Options:
If "Changes requested": prompt "Please describe the required changes (which entities to add/remove/rename, which relationships to correct):" and capture as notes.
If "Needs discussion": suggest running a workshop.
Suggested next step: generate workshop materials to facilitate the discussion.
/wire:workshops-generate <project_id>
If approved:
conceptual_model:
review: approved
reviewed_by: [name and/or role of approver]
reviewed_date: [today]
Add to status notes: "Conceptual model approved [date] by [reviewer] — [entity count] entities, [relationship count] relationships confirmed"
If changes requested:
conceptual_model:
review: changes_requested
reviewed_date: [today]
Add to status notes: "Conceptual model: changes requested [date] — [one-line summary of changes needed]"
If needs discussion:
conceptual_model:
review: pending
Add to status blockers: "Conceptual model review pending — open questions require workshop resolution"
If approved:
## Conceptual Model Approved ✅
The entity model is confirmed by business stakeholders. Downstream design
artifacts are now unblocked.
### Next Steps (can be run in parallel or either order)
Design the data pipeline architecture:
/wire:pipeline_design-generate <project_id>
Begin the data model specification (dbt layers):
/wire:data_model-generate <project_id>
Both commands will read the approved conceptual model as a primary input.
If changes requested:
## Changes Required
Update design/conceptual_model.md with the requested changes:
[list changes captured]
Then re-validate and re-review:
/wire:conceptual_model-validate <project_id>
/wire:conceptual_model-review <project_id>
Follow the Jira sync workflow in specs/utils/jira_sync.md:
conceptual_modelreviewIf a document store is configured and the review outcome is Approved, follow specs/utils/docstore_sync.md to overwrite the document store page with the canonical file. This ensures the document store reflects the approved version.
If the review must be conducted asynchronously (e.g. by email or shared document):
pending with a note"Conceptual model review pending stakeholder response — sent [date]"If stakeholders approve some entities but dispute others:
changes_requestedIf the review surfaces a major scope change (e.g. an entirely new domain added, or a core entity removed):
changes_requested.wire/<project_id>/status.md with review outcome, reviewer name, and dateExecute the complete workflow as specified above.
After completing the workflow, append a log entry to the project's execution_log.md:
After completing any generate, validate, or review workflow (or a project management command that changes state), append a single log entry to the project's execution log file.
<DP_PROJECTS_PATH>/<project_folder>/execution_log.md
Where <project_folder> is the project directory passed as an argument (e.g., 20260222_acme_platform).
If the file does not exist, create it with the header:
# Execution Log
| Timestamp | Command | Result | Detail |
|-----------|---------|--------|--------|
Then append one row per execution:
| YYYY-MM-DD HH:MM | /wire:<command> | <result> | <detail> |
YYYY-MM-DD HH:MM format (24-hour, local time)/wire:* command that was invoked (e.g., /wire:requirements-generate, /wire:new, /wire:dbt-validate)complete — generate command finished successfullypass — validate command passed all checksfail — validate command found failuresapproved — review command: stakeholder approvedchanges_requested — review command: stakeholder requested changescreated — /wire:new created a new projectarchived — /wire:archive archived a projectremoved — /wire:remove deleted a project|, replace with — to preserve table formatting# Execution Log
| Timestamp | Command | Result | Detail |
|-----------|---------|--------|--------|
| 2026-02-22 14:35 | /wire:new | created | Project created (type: full_platform, client: Acme Corp) |
| 2026-02-22 14:40 | /wire:requirements-generate | complete | Generated requirements specification (3 files) |
| 2026-02-22 15:12 | /wire:requirements-validate | pass | 14 checks passed, 0 failed |
| 2026-02-22 16:00 | /wire:requirements-review | approved | Reviewed by Jane Smith |
| 2026-02-23 09:15 | /wire:conceptual_model-generate | complete | Generated entity model with 8 entities |
| 2026-02-23 10:30 | /wire:conceptual_model-validate | fail | 2 issues: missing relationship, orphaned entity |
| 2026-02-23 11:00 | /wire:conceptual_model-generate | complete | Regenerated entity model (fixed 2 issues, 8 entities) |
| 2026-02-23 11:15 | /wire:conceptual_model-validate | pass | 12 checks passed, 0 failed |
| 2026-02-23 14:00 | /wire:conceptual_model-review | changes_requested | Reviewed by John Doe — add Customer entity |
| 2026-02-23 15:30 | /wire:conceptual_model-generate | complete | Regenerated entity model (9 entities, added Customer) |
| 2026-02-23 15:45 | /wire:conceptual_model-validate | pass | 14 checks passed, 0 failed |
| 2026-02-23 16:00 | /wire:conceptual_model-review | approved | Reviewed by John Doe |