@mr.dj2u/cli 0.1.1 → 0.1.2
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/bundles/claude-code/.claude-plugin/plugin.json +12 -0
- package/bundles/claude-code/.mcp.json +8 -0
- package/bundles/claude-code/CLAUDE.md +59 -0
- package/bundles/claude-code/README.md +51 -0
- package/bundles/claude-code/agents/mds.md +35 -0
- package/bundles/claude-code/commands/continue-development.md +27 -0
- package/bundles/claude-code/commands/create-expo-super-stack.md +30 -0
- package/bundles/claude-code/commands/fix-seo.md +29 -0
- package/bundles/claude-code/commands/prepare-deploy.md +31 -0
- package/bundles/claude-code/commands/project-research-plan.md +29 -0
- package/bundles/claude-code/commands/review-expo-project.md +32 -0
- package/bundles/claude-code/commands/run-doctor.md +32 -0
- package/bundles/claude-code/settings.json +3 -0
- package/bundles/claude-code/skills/api-routes/SKILL.md +37 -0
- package/bundles/claude-code/skills/continue-development/SKILL.md +32 -0
- package/bundles/claude-code/skills/create-expo-super-stack/SKILL.md +35 -0
- package/bundles/claude-code/skills/debugging/SKILL.md +36 -0
- package/bundles/claude-code/skills/deployment/SKILL.md +36 -0
- package/bundles/claude-code/skills/dev-server-management/SKILL.md +36 -0
- package/bundles/claude-code/skills/env-vars/SKILL.md +36 -0
- package/bundles/claude-code/skills/expo-router-architecture/SKILL.md +37 -0
- package/bundles/claude-code/skills/expo-ssr-safety/SKILL.md +36 -0
- package/bundles/claude-code/skills/fix-seo/SKILL.md +34 -0
- package/bundles/claude-code/skills/plugin-creation/SKILL.md +45 -0
- package/bundles/claude-code/skills/prepare-deploy/SKILL.md +36 -0
- package/bundles/claude-code/skills/production-server-patterns/SKILL.md +35 -0
- package/bundles/claude-code/skills/project-onboarding/SKILL.md +35 -0
- package/bundles/claude-code/skills/project-research-plan/SKILL.md +34 -0
- package/bundles/claude-code/skills/research-plan-intake/SKILL.md +36 -0
- package/bundles/claude-code/skills/review-expo-project/SKILL.md +37 -0
- package/bundles/claude-code/skills/run-doctor/SKILL.md +37 -0
- package/bundles/claude-code/skills/seo-metadata/SKILL.md +35 -0
- package/bundles/claude-code/skills/super-stack-startup/SKILL.md +38 -0
- package/bundles/claude-code/skills/uniwind-theming/SKILL.md +36 -0
- package/bundles/codex/.codex-plugin/plugin.json +42 -0
- package/bundles/codex/.mcp.json +11 -0
- package/bundles/codex/README.md +47 -0
- package/bundles/codex/commands/continue-development.md +27 -0
- package/bundles/codex/commands/create-expo-super-stack.md +30 -0
- package/bundles/codex/commands/fix-seo.md +29 -0
- package/bundles/codex/commands/prepare-deploy.md +31 -0
- package/bundles/codex/commands/project-research-plan.md +29 -0
- package/bundles/codex/commands/review-expo-project.md +32 -0
- package/bundles/codex/commands/run-doctor.md +32 -0
- package/bundles/codex/skills/api-routes/SKILL.md +32 -0
- package/bundles/codex/skills/continue-development/SKILL.md +32 -0
- package/bundles/codex/skills/debugging/SKILL.md +32 -0
- package/bundles/codex/skills/deployment/SKILL.md +31 -0
- package/bundles/codex/skills/dev-server-management/SKILL.md +32 -0
- package/bundles/codex/skills/env-vars/SKILL.md +31 -0
- package/bundles/codex/skills/expo-router-architecture/SKILL.md +32 -0
- package/bundles/codex/skills/expo-ssr-safety/SKILL.md +31 -0
- package/bundles/codex/skills/plugin-creation/SKILL.md +41 -0
- package/bundles/codex/skills/production-server-patterns/SKILL.md +31 -0
- package/bundles/codex/skills/project-onboarding/SKILL.md +31 -0
- package/bundles/codex/skills/research-plan-intake/SKILL.md +32 -0
- package/bundles/codex/skills/seo-metadata/SKILL.md +31 -0
- package/bundles/codex/skills/super-stack-startup/SKILL.md +34 -0
- package/bundles/codex/skills/uniwind-theming/SKILL.md +31 -0
- package/bundles/vscode-copilot/.github/agents/mds.agent.md +22 -0
- package/bundles/vscode-copilot/.github/copilot-instructions.md +8 -0
- package/bundles/vscode-copilot/.github/prompts/continue-development.prompt.md +32 -0
- package/bundles/vscode-copilot/.github/prompts/create-expo-super-stack.prompt.md +35 -0
- package/bundles/vscode-copilot/.github/prompts/fix-seo.prompt.md +34 -0
- package/bundles/vscode-copilot/.github/prompts/prepare-deploy.prompt.md +36 -0
- package/bundles/vscode-copilot/.github/prompts/project-research-plan.prompt.md +34 -0
- package/bundles/vscode-copilot/.github/prompts/review-expo-project.prompt.md +37 -0
- package/bundles/vscode-copilot/.github/prompts/run-doctor.prompt.md +37 -0
- package/bundles/vscode-copilot/.github/skills/api-routes/SKILL.md +38 -0
- package/bundles/vscode-copilot/.github/skills/continue-development/SKILL.md +37 -0
- package/bundles/vscode-copilot/.github/skills/debugging/SKILL.md +37 -0
- package/bundles/vscode-copilot/.github/skills/deployment/SKILL.md +37 -0
- package/bundles/vscode-copilot/.github/skills/dev-server-management/SKILL.md +37 -0
- package/bundles/vscode-copilot/.github/skills/env-vars/SKILL.md +37 -0
- package/bundles/vscode-copilot/.github/skills/expo-router-architecture/SKILL.md +38 -0
- package/bundles/vscode-copilot/.github/skills/expo-ssr-safety/SKILL.md +37 -0
- package/bundles/vscode-copilot/.github/skills/plugin-creation/SKILL.md +46 -0
- package/bundles/vscode-copilot/.github/skills/production-server-patterns/SKILL.md +36 -0
- package/bundles/vscode-copilot/.github/skills/project-onboarding/SKILL.md +36 -0
- package/bundles/vscode-copilot/.github/skills/research-plan-intake/SKILL.md +37 -0
- package/bundles/vscode-copilot/.github/skills/seo-metadata/SKILL.md +36 -0
- package/bundles/vscode-copilot/.github/skills/super-stack-startup/SKILL.md +39 -0
- package/bundles/vscode-copilot/.github/skills/uniwind-theming/SKILL.md +37 -0
- package/bundles/vscode-copilot/.vscode/mcp.json +11 -0
- package/bundles/vscode-copilot/.vscode/settings.json +14 -0
- package/bundles/vscode-copilot/README.md +32 -0
- package/bundles/vscode-copilot/user/.copilot/agents/mds.agent.md +22 -0
- package/bundles/vscode-copilot/user/.copilot/instructions.md +8 -0
- package/bundles/vscode-copilot/user/.copilot/skills/api-routes/SKILL.md +38 -0
- package/bundles/vscode-copilot/user/.copilot/skills/continue-development/SKILL.md +37 -0
- package/bundles/vscode-copilot/user/.copilot/skills/debugging/SKILL.md +37 -0
- package/bundles/vscode-copilot/user/.copilot/skills/deployment/SKILL.md +37 -0
- package/bundles/vscode-copilot/user/.copilot/skills/dev-server-management/SKILL.md +37 -0
- package/bundles/vscode-copilot/user/.copilot/skills/env-vars/SKILL.md +37 -0
- package/bundles/vscode-copilot/user/.copilot/skills/expo-router-architecture/SKILL.md +38 -0
- package/bundles/vscode-copilot/user/.copilot/skills/expo-ssr-safety/SKILL.md +37 -0
- package/bundles/vscode-copilot/user/.copilot/skills/plugin-creation/SKILL.md +46 -0
- package/bundles/vscode-copilot/user/.copilot/skills/production-server-patterns/SKILL.md +36 -0
- package/bundles/vscode-copilot/user/.copilot/skills/project-onboarding/SKILL.md +36 -0
- package/bundles/vscode-copilot/user/.copilot/skills/research-plan-intake/SKILL.md +37 -0
- package/bundles/vscode-copilot/user/.copilot/skills/seo-metadata/SKILL.md +36 -0
- package/bundles/vscode-copilot/user/.copilot/skills/super-stack-startup/SKILL.md +39 -0
- package/bundles/vscode-copilot/user/.copilot/skills/uniwind-theming/SKILL.md +37 -0
- package/bundles/vscode-copilot/user/.copilot/skills/workflow-continue-development/SKILL.md +32 -0
- package/bundles/vscode-copilot/user/.copilot/skills/workflow-create-expo-super-stack/SKILL.md +35 -0
- package/bundles/vscode-copilot/user/.copilot/skills/workflow-fix-seo/SKILL.md +34 -0
- package/bundles/vscode-copilot/user/.copilot/skills/workflow-prepare-deploy/SKILL.md +36 -0
- package/bundles/vscode-copilot/user/.copilot/skills/workflow-project-research-plan/SKILL.md +34 -0
- package/bundles/vscode-copilot/user/.copilot/skills/workflow-review-expo-project/SKILL.md +37 -0
- package/bundles/vscode-copilot/user/.copilot/skills/workflow-run-doctor/SKILL.md +37 -0
- package/dist/cli.js +2 -2
- package/dist/cli.js.map +1 -1
- package/dist/commands/agent.d.ts.map +1 -1
- package/dist/commands/agent.js +14 -0
- package/dist/commands/agent.js.map +1 -1
- package/dist/project-memory.js +0 -2
- package/dist/project-memory.js.map +1 -1
- package/package.json +4 -3
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "mds-dev-suite",
|
|
3
|
+
"description": "Expo project intelligence for Claude Code: Doctor diagnostics, architecture skills, MCP tools, custom MDS agent, and project-memory commands for Expo Router apps.",
|
|
4
|
+
"version": "0.1.0",
|
|
5
|
+
"author": {
|
|
6
|
+
"name": "David Grimsley",
|
|
7
|
+
"url": "https://github.com/DavidJGrimsley"
|
|
8
|
+
},
|
|
9
|
+
"homepage": "https://github.com/DavidJGrimsley/mds-dev-suite",
|
|
10
|
+
"repository": "https://github.com/DavidJGrimsley/mds-dev-suite",
|
|
11
|
+
"license": "MIT"
|
|
12
|
+
}
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
# Mr. DJ's Dev Suite - Claude Code Instructions
|
|
2
|
+
|
|
3
|
+
This file is merged by `mds agent install --client claude` into either a project `CLAUDE.md` or user `~/.claude/CLAUDE.md`.
|
|
4
|
+
|
|
5
|
+
## MDS MCP Tools Available
|
|
6
|
+
|
|
7
|
+
When the `mr-djs-dev-suite` MCP server is connected (check `/mcp`), use these tools before falling back to terminal commands:
|
|
8
|
+
|
|
9
|
+
| Tool | Use it when |
|
|
10
|
+
|------|-------------|
|
|
11
|
+
| `list_skills` | Listing available MDS skills and summaries |
|
|
12
|
+
| `doctor_scan_project` | Auditing an Expo project for errors and warnings |
|
|
13
|
+
| `doctor_scan_file` | Reviewing one file for architecture, env, SSR, API, or route issues |
|
|
14
|
+
| `doctor_explain_result` | Getting a plain-English explanation of a Doctor finding |
|
|
15
|
+
| `generate_refactor_plan` | Planning a refactor with Doctor findings and related MDS knowledge |
|
|
16
|
+
| `generate_deploy_checklist` | Creating a target-aware release checklist |
|
|
17
|
+
| `get_skill` | Loading a full skill document by ID, such as `expo-router-architecture` |
|
|
18
|
+
| `get_guide` | Loading a guide by ID, such as `animation-performance` |
|
|
19
|
+
| `knowledge_list_resources` | Compatibility alias for listing skills, guides, rules, and patterns |
|
|
20
|
+
| `generate_setup_tasks` | Generating a phase-ordered task list for a new Expo app |
|
|
21
|
+
| `continue_project` | Continuing work from `project/todo.md` in an existing app |
|
|
22
|
+
|
|
23
|
+
## MDS Agent
|
|
24
|
+
|
|
25
|
+
The project includes a Claude Code custom agent at `.claude/agents/mds.md` after install. Use it for Doctor scans, project review, onboarding, deployment readiness, refactor planning, and phase-based continuation.
|
|
26
|
+
|
|
27
|
+
## When To Run Doctor
|
|
28
|
+
|
|
29
|
+
- Before every `git commit`, run `doctor_scan_project` or `mds doctor --fast` in the terminal.
|
|
30
|
+
- Before starting a new phase of development, resolve all Doctor errors first.
|
|
31
|
+
- Before release/client handoff, run `generate_deploy_checklist` and then fix any blocking Doctor errors.
|
|
32
|
+
|
|
33
|
+
## Dev Server Rule
|
|
34
|
+
|
|
35
|
+
Always start Expo with `mds clear-expo-start <project-path>`. Never use bare `expo start`, `npx expo start`, or `pnpm exec expo start`. This command frees port 8081, clears caches, and starts with `--clear`.
|
|
36
|
+
|
|
37
|
+
## Slash Commands
|
|
38
|
+
|
|
39
|
+
This project has MDS slash commands installed in `.claude/commands/`:
|
|
40
|
+
|
|
41
|
+
| Command | What it does |
|
|
42
|
+
|---------|-------------|
|
|
43
|
+
| `/run-doctor` | Run MDS Doctor and get a prioritized issue summary |
|
|
44
|
+
| `/review-expo-project` | Full project review: Doctor plus architecture, SSR, and env skills |
|
|
45
|
+
| `/prepare-deploy` | Pre-deploy checklist using deployment skills and MCP tools |
|
|
46
|
+
| `/fix-seo` | SEO and metadata gap analysis and fixes |
|
|
47
|
+
| `/create-expo-super-stack` | Guided `create-expo-super-stack` session |
|
|
48
|
+
| `/continue-development` | Pick and start the next task from `project/todo.md` |
|
|
49
|
+
| `/research-plan` | Turn raw notes or ideas into canonical `project/info.md` |
|
|
50
|
+
|
|
51
|
+
## Project Memory
|
|
52
|
+
|
|
53
|
+
Keep these files as the source of truth for agent context:
|
|
54
|
+
|
|
55
|
+
- `project/info.md` - product goals, user needs, tech decisions
|
|
56
|
+
- `project/todo.md` - phase-ordered task list
|
|
57
|
+
- `project/style.md` - visual/UI conventions only
|
|
58
|
+
- `project/guidelines.md` - technical rules and project-specific agent behavior
|
|
59
|
+
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
# Mr. DJ's Dev Suite - Claude Code Plugin
|
|
2
|
+
|
|
3
|
+
Gives Claude Code native MDS behavior for Expo projects: MCP tools, a custom `mds` agent, slash commands, generated skills, and project instructions.
|
|
4
|
+
|
|
5
|
+
## What's Included
|
|
6
|
+
|
|
7
|
+
| Path | Purpose |
|
|
8
|
+
|------|---------|
|
|
9
|
+
| `CLAUDE.md` | Instructions merged into project `CLAUDE.md` or user `~/.claude/CLAUDE.md` |
|
|
10
|
+
| `.mcp.json` | Pre-configured MCP server example for `mr-djs-dev-suite` |
|
|
11
|
+
| `agents/mds.md` | Claude Code custom agent for MDS workflows |
|
|
12
|
+
| `commands/*.md` | Slash command markdown files copied to `.claude/commands/` |
|
|
13
|
+
| `skills/*/SKILL.md` | Build-generated skills sourced from `packages/knowledge` |
|
|
14
|
+
|
|
15
|
+
## One-Command Install
|
|
16
|
+
|
|
17
|
+
Project scope installs MCP, instructions, the custom agent, slash commands, and generated skills into one Expo app:
|
|
18
|
+
|
|
19
|
+
```sh
|
|
20
|
+
mds agent install --client claude --scope project --target /path/to/your/expo-app
|
|
21
|
+
mds agent verify --client claude --target /path/to/your/expo-app
|
|
22
|
+
```
|
|
23
|
+
|
|
24
|
+
User scope installs MCP plus reusable assets into `~/.claude`:
|
|
25
|
+
|
|
26
|
+
```sh
|
|
27
|
+
mds agent install --client claude --scope user
|
|
28
|
+
mds agent install --client claude --scope user --dry-run
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
After install, restart Claude Code or reopen the workspace, run `/mcp`, and confirm `mr-djs-dev-suite` is listed. Then use the `mds` agent or slash commands such as `/run-doctor`, `/review-expo-project`, and `/prepare-deploy`.
|
|
32
|
+
|
|
33
|
+
## MCP-Only Fallback
|
|
34
|
+
|
|
35
|
+
Use this when you only want MCP tools/prompts and not the local agent/commands/skills files:
|
|
36
|
+
|
|
37
|
+
```sh
|
|
38
|
+
mds mcp install --client claude --scope project --target /path/to/your/expo-app
|
|
39
|
+
mds mcp install --client claude --scope user
|
|
40
|
+
```
|
|
41
|
+
|
|
42
|
+
## Generated Assets
|
|
43
|
+
|
|
44
|
+
Skills are sourced from `packages/knowledge/src/content/skills/` and generated into `plugins/claude-code/skills/` at build time. Slash commands are copied from `commands-src/` into `commands/` during the same build.
|
|
45
|
+
|
|
46
|
+
```sh
|
|
47
|
+
pnpm --filter @mr.dj2u/knowledge build
|
|
48
|
+
```
|
|
49
|
+
|
|
50
|
+
Do not edit generated `commands/` or `skills/` files directly; update the knowledge source or command source and rebuild.
|
|
51
|
+
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: mds
|
|
3
|
+
description: Use for Mr. DJ's Dev Suite Expo project work: Doctor scans, project review, onboarding, deployment readiness, and phase-based continuation.
|
|
4
|
+
model: inherit
|
|
5
|
+
skills:
|
|
6
|
+
- deployment
|
|
7
|
+
- debugging
|
|
8
|
+
- continue-development
|
|
9
|
+
- project-onboarding
|
|
10
|
+
- expo-router-architecture
|
|
11
|
+
- expo-ssr-safety
|
|
12
|
+
- env-vars
|
|
13
|
+
- seo-metadata
|
|
14
|
+
---
|
|
15
|
+
|
|
16
|
+
# MDS Agent
|
|
17
|
+
|
|
18
|
+
You are the Mr. DJ's Dev Suite agent for Expo projects. Prefer MDS MCP tools first, then CLI fallbacks.
|
|
19
|
+
|
|
20
|
+
## Tool Routing
|
|
21
|
+
|
|
22
|
+
- Use `continue_project` before choosing phase work from `project/todo.md`.
|
|
23
|
+
- Use `doctor_scan_project` before release, broad refactors, or git handoff.
|
|
24
|
+
- Use `doctor_scan_file` for focused route, env, SSR, or API changes.
|
|
25
|
+
- Use `generate_refactor_plan` before moving architecture across folders.
|
|
26
|
+
- Use `generate_deploy_checklist` before release or client handoff.
|
|
27
|
+
- Use `list_skills`, `get_skill`, and `get_guide` before giving MDS-specific guidance.
|
|
28
|
+
|
|
29
|
+
## Guardrails
|
|
30
|
+
|
|
31
|
+
- Treat `project/` as the source of truth for product intent, style, roadmap, and technical rules.
|
|
32
|
+
- Keep route files thin, env secrets server-only, and release work gated by Doctor checks.
|
|
33
|
+
- Prefer official Expo/React Native guidance for framework mechanics; MDS adds project memory, checks, defaults, and workflows.
|
|
34
|
+
- Do not skip unresolved `# TodoForContext(optional):` markers before implementation.
|
|
35
|
+
- When MCP is unavailable, use CLI fallbacks such as `mds doctor`, `mds continue`, and `mds report`.
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
# /continue-development
|
|
2
|
+
|
|
3
|
+
Resume work on an onboarded project by following MDS phase order from `project/todo.md`.
|
|
4
|
+
|
|
5
|
+
## Arguments
|
|
6
|
+
|
|
7
|
+
- `projectPath`: onboarded app path (default: current directory).
|
|
8
|
+
|
|
9
|
+
## MCP-First Workflow
|
|
10
|
+
|
|
11
|
+
1. Confirm the `mr-djs-dev-suite` MCP server is available.
|
|
12
|
+
2. Call `continue_project` first to get the active-phase brief.
|
|
13
|
+
3. Pull `get_skill` for `continue-development` to enforce phase-first sequencing.
|
|
14
|
+
4. If blockers appear, use `doctor_scan_project` and `doctor_explain_result` for targeted remediation before feature work.
|
|
15
|
+
|
|
16
|
+
## CLI / Manual Fallback
|
|
17
|
+
|
|
18
|
+
1. If MCP is not configured, install it manually:
|
|
19
|
+
- `mds mcp install --client codex --scope project`
|
|
20
|
+
2. Direct CLI flow:
|
|
21
|
+
- `mds continue <projectPath>`
|
|
22
|
+
- `mds doctor <projectPath>` when blockers are unclear.
|
|
23
|
+
|
|
24
|
+
## Verification And Output
|
|
25
|
+
|
|
26
|
+
- Confirm the chosen task belongs to the active phase or has an explicit deferral note.
|
|
27
|
+
- Output: selected next task, blockers, and validation commands to run after implementation.
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
# /create-expo-super-stack
|
|
2
|
+
|
|
3
|
+
Create a new Expo app with the MDS Super Stack flow, using this knowledge package as the shared source of truth for agent-facing text and the published CLI as the execution source of truth.
|
|
4
|
+
|
|
5
|
+
## Arguments
|
|
6
|
+
|
|
7
|
+
- `parentDir`: folder where the new app directory should be created.
|
|
8
|
+
- `appName`: app folder name.
|
|
9
|
+
|
|
10
|
+
## MCP-First Workflow
|
|
11
|
+
|
|
12
|
+
1. Confirm the `mr-djs-dev-suite` MCP server is available.
|
|
13
|
+
2. Invoke the MCP prompt `create_expo_super_stack` from a parent directory when you want guided intake.
|
|
14
|
+
3. Keep the conversation one question per turn and summarize the captured choices before generation.
|
|
15
|
+
4. Treat the MCP prompt as the intake surface and the CLI as the generator, so CLI changes are picked up automatically when the published command changes.
|
|
16
|
+
5. After generation, move into the new app folder and invoke `continue_project` (or prompt `continue_mds_project`) for the first implementation session.
|
|
17
|
+
|
|
18
|
+
## CLI / Manual Fallback
|
|
19
|
+
|
|
20
|
+
1. If MCP is not configured, install it manually:
|
|
21
|
+
- `mds mcp install --client codex --scope project`
|
|
22
|
+
2. Direct CLI generation:
|
|
23
|
+
- `npx -y create-expo-super-stack <appName>`
|
|
24
|
+
3. Then onboard/continue from inside the generated app using the current CLI behavior:
|
|
25
|
+
- `mds continue <new-app-path>`
|
|
26
|
+
|
|
27
|
+
## Verification And Output
|
|
28
|
+
|
|
29
|
+
- Confirm generated app has `project/info.md`, `project/todo.md`, `project/style.md`, and `project/guidelines.md`.
|
|
30
|
+
- Output: generated app path, onboarding status, and immediate next command.
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
# /fix-seo
|
|
2
|
+
|
|
3
|
+
Apply SEO metadata fixes for Expo web routes with MCP guidance and post-fix verification.
|
|
4
|
+
|
|
5
|
+
## Arguments
|
|
6
|
+
|
|
7
|
+
- `projectPath`: Expo project path (default: current directory).
|
|
8
|
+
- `routeOrFile`: optional route/file focus for targeted checks.
|
|
9
|
+
|
|
10
|
+
## MCP-First Workflow
|
|
11
|
+
|
|
12
|
+
1. Confirm the `mr-djs-dev-suite` MCP server is available.
|
|
13
|
+
2. Pull `get_skill` for `seo-metadata`.
|
|
14
|
+
3. Optionally run `doctor_scan_file` for focused route files, then `doctor_scan_project` for full checks.
|
|
15
|
+
4. Use `knowledge_list_resources` (`kind: "rule"`) to ensure canonical/indexing strategy is complete.
|
|
16
|
+
5. Implement metadata, canonical, robots, and sitemap corrections in route ownership boundaries.
|
|
17
|
+
|
|
18
|
+
## CLI / Manual Fallback
|
|
19
|
+
|
|
20
|
+
1. If MCP is not configured, install it manually:
|
|
21
|
+
- `mds mcp install --client codex --scope project`
|
|
22
|
+
2. Direct CLI checks:
|
|
23
|
+
- `mds doctor <projectPath> --ci`
|
|
24
|
+
- Run project-specific web build/preview commands to verify metadata output.
|
|
25
|
+
|
|
26
|
+
## Verification And Output
|
|
27
|
+
|
|
28
|
+
- Confirm canonical tags, social metadata, and sitemap/robots behavior on affected routes.
|
|
29
|
+
- Output: changed files, resolved SEO gaps, and any remaining manual verification steps.
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
# /prepare-deploy
|
|
2
|
+
|
|
3
|
+
Prepare an Expo project for release using deployment-focused skills plus Doctor parity checks.
|
|
4
|
+
|
|
5
|
+
## Arguments
|
|
6
|
+
|
|
7
|
+
- `projectPath`: release candidate project path (default: current directory).
|
|
8
|
+
- `includeSeo`: whether to include web metadata/indexing checks (default: `true` when web is targeted).
|
|
9
|
+
|
|
10
|
+
## MCP-First Workflow
|
|
11
|
+
|
|
12
|
+
1. Confirm the `mr-djs-dev-suite` MCP server is available.
|
|
13
|
+
2. Run `doctor_scan_project` in `ci` mode for release parity.
|
|
14
|
+
3. Pull `get_skill` for `deployment`; if web is involved also pull `seo-metadata`.
|
|
15
|
+
4. Use `knowledge_list_resources` (`kind: "rule"`) to confirm env hygiene, SSR safety, and metadata requirements.
|
|
16
|
+
5. Call `generate_deploy_checklist` so SEO, scripts, and release-readiness gaps are reflected in the next steps.
|
|
17
|
+
6. Produce a release checklist mapped to current failing checks.
|
|
18
|
+
|
|
19
|
+
## CLI / Manual Fallback
|
|
20
|
+
|
|
21
|
+
1. If MCP is not configured, install it manually:
|
|
22
|
+
- `mds mcp install --client codex --scope project`
|
|
23
|
+
2. Direct CLI path:
|
|
24
|
+
- `mds doctor <projectPath> --ci`
|
|
25
|
+
- Run project scripts: `lint`, `type-check`, `test`, and production build/profile scripts.
|
|
26
|
+
|
|
27
|
+
## Verification And Output
|
|
28
|
+
|
|
29
|
+
- Re-run `doctor_scan_project` (or CLI equivalent) until blockers are cleared.
|
|
30
|
+
- Keep the response user-facing and checklist-driven; avoid internal tool chatter and avoid asking for a PR unless the user requested GitHub workflow.
|
|
31
|
+
- Output: release readiness status, unresolved blockers, and rollback/readiness notes.
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
# /project-research-plan
|
|
2
|
+
|
|
3
|
+
Turn rough product notes/research into actionable MDS project memory and next-phase plan.
|
|
4
|
+
|
|
5
|
+
## Arguments
|
|
6
|
+
|
|
7
|
+
- `projectPath`: target project path (default: current directory).
|
|
8
|
+
- `inputs`: attached notes/docs to normalize into canonical memory files.
|
|
9
|
+
|
|
10
|
+
## MCP-First Workflow
|
|
11
|
+
|
|
12
|
+
1. Confirm the `mr-djs-dev-suite` MCP server is available.
|
|
13
|
+
2. Pull `get_skill` for `research-plan-intake` (and `project-onboarding` when onboarding context is mixed in).
|
|
14
|
+
3. Call `knowledge_list_resources` for `guide` and `reference` resources as needed for structure and validation.
|
|
15
|
+
4. Normalize clear context directly; ask focused follow-up only where ambiguity changes implementation direction.
|
|
16
|
+
5. Update project memory files and produce an implementation-ready next-phase plan.
|
|
17
|
+
|
|
18
|
+
## CLI / Manual Fallback
|
|
19
|
+
|
|
20
|
+
1. If MCP is not configured, install it manually:
|
|
21
|
+
- `mds mcp install --client codex --scope project`
|
|
22
|
+
2. Direct CLI fallback:
|
|
23
|
+
- Use `mds onboard <projectPath>` for structured intake when memory files are missing.
|
|
24
|
+
- Use `mds continue <projectPath>` after memory normalization to select the next task.
|
|
25
|
+
|
|
26
|
+
## Verification And Output
|
|
27
|
+
|
|
28
|
+
- Confirm `project/info.md`, `project/style.md`, and `project/todo.md` align with extracted research context.
|
|
29
|
+
- Output: resolved unknowns, outstanding questions, and the recommended next implementation slice.
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
# /review-expo-project
|
|
2
|
+
|
|
3
|
+
Review an Expo project with MCP-first diagnostics and skill-guided remediation.
|
|
4
|
+
|
|
5
|
+
## Arguments
|
|
6
|
+
|
|
7
|
+
- `projectPath`: absolute or relative project path (default: current directory).
|
|
8
|
+
- `mode`: Doctor mode (`fast`, `ci`, or `full`; default: `ci`).
|
|
9
|
+
|
|
10
|
+
## MCP-First Workflow
|
|
11
|
+
|
|
12
|
+
1. Confirm the `mr-djs-dev-suite` MCP server is available.
|
|
13
|
+
2. Call `continue_project` to summarize current project state and blockers.
|
|
14
|
+
3. Call `doctor_scan_project` with `projectPath` and `mode`.
|
|
15
|
+
4. For each warning/error, call `doctor_explain_result`, then pull targeted guidance with `get_skill` (for example: `project-onboarding`, `debugging`, `deployment`).
|
|
16
|
+
5. If the findings affect release readiness, call `generate_deploy_checklist` so the next steps stay checklist-driven instead of PR-driven.
|
|
17
|
+
6. Call `knowledge_list_resources` with `kind: "guide"` if extra reference context is needed.
|
|
18
|
+
|
|
19
|
+
## CLI / Manual Fallback
|
|
20
|
+
|
|
21
|
+
1. If MCP is not configured, install it manually:
|
|
22
|
+
- `mds mcp install --client codex --scope project`
|
|
23
|
+
2. If MCP still cannot run, use direct CLI flows:
|
|
24
|
+
- `mds continue <projectPath>`
|
|
25
|
+
- `mds doctor <projectPath> --ci`
|
|
26
|
+
|
|
27
|
+
## Verification And Output
|
|
28
|
+
|
|
29
|
+
- Keep the response user-facing: summarize findings and next steps without echoing internal tool chatter or file-read noise.
|
|
30
|
+
- Re-run `doctor_scan_project` (or `mds doctor --ci`) after fixes.
|
|
31
|
+
- If the user is validating an installed agent bundle, include `mds agent verify --client <client> --target <path>` in the follow-up commands.
|
|
32
|
+
- Output: blocker summary, failing checks, recommended next task, and concrete follow-up commands. Avoid proposing a PR unless the user explicitly asks for a GitHub workflow.
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
# /run-doctor
|
|
2
|
+
|
|
3
|
+
Run MDS Doctor as the primary health check for an Expo project.
|
|
4
|
+
|
|
5
|
+
## Arguments
|
|
6
|
+
|
|
7
|
+
- `projectPath`: project root path (default: current directory).
|
|
8
|
+
- `mode`: `fast`, `ci`, or `full` (default: `ci`).
|
|
9
|
+
- `runScripts`: whether Doctor should execute project scripts (default: `true` for `ci` mode).
|
|
10
|
+
|
|
11
|
+
## MCP-First Workflow
|
|
12
|
+
|
|
13
|
+
1. Confirm the `mr-djs-dev-suite` MCP server is available.
|
|
14
|
+
2. Call `doctor_scan_project` with selected arguments.
|
|
15
|
+
3. For each non-pass result, call `doctor_explain_result`.
|
|
16
|
+
4. If the check is release-related or web-facing, call `generate_deploy_checklist` before giving next steps.
|
|
17
|
+
5. Pull targeted implementation guidance with `get_skill` (typically `deployment`, `debugging`, or `dev-server-management`).
|
|
18
|
+
|
|
19
|
+
## CLI / Manual Fallback
|
|
20
|
+
|
|
21
|
+
1. If MCP is not configured, install it manually:
|
|
22
|
+
- `mds mcp install --client codex --scope project`
|
|
23
|
+
2. Direct CLI alternatives:
|
|
24
|
+
- `mds doctor <projectPath>`
|
|
25
|
+
- `mds doctor <projectPath> --ci`
|
|
26
|
+
- `mds doctor <projectPath> --json`
|
|
27
|
+
|
|
28
|
+
## Verification And Output
|
|
29
|
+
|
|
30
|
+
- Re-run Doctor after each fix batch.
|
|
31
|
+
- Keep the response concise and user-facing; do not surface internal tool chatter or intermediate file reads.
|
|
32
|
+
- Output: check summary, blocking errors first, and the exact command used for re-check.
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Use when creating, reviewing, or debugging Expo Router API route handlers.
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
# Skill: API Routes
|
|
6
|
+
|
|
7
|
+
Use when creating, reviewing, or debugging Expo Router API route handlers.
|
|
8
|
+
|
|
9
|
+
## Main rule
|
|
10
|
+
|
|
11
|
+
Keep route handlers thin and defensive: validate input, enforce auth/authorization before data access, and return consistent typed responses.
|
|
12
|
+
|
|
13
|
+
## Checks
|
|
14
|
+
|
|
15
|
+
- Confirm each endpoint handles allowed methods explicitly and rejects unsupported methods.
|
|
16
|
+
- Validate request params/body with schema guards before business logic executes.
|
|
17
|
+
- Enforce auth first for privileged operations; never rely on client-provided roles.
|
|
18
|
+
- Keep service-role credentials on server-only paths and avoid exposing them to client bundles.
|
|
19
|
+
- Confirm error responses are structured and safe (no stack traces or secret values).
|
|
20
|
+
|
|
21
|
+
## Preferred structure
|
|
22
|
+
|
|
23
|
+
- Use one route module per resource concern.
|
|
24
|
+
- Parse and validate request data first, then call feature/service logic.
|
|
25
|
+
- Keep DB and external API logic in service modules, not inline in route files.
|
|
26
|
+
- Use a shared response envelope pattern for success and failure paths.
|
|
27
|
+
|
|
28
|
+
## Example fix
|
|
29
|
+
|
|
30
|
+
- Problem: A `POST` route writes directly to DB with unchecked body data.
|
|
31
|
+
- Fix: Add schema validation, early auth check, and move write logic into a service function before returning a typed response object.
|
|
32
|
+
|
|
33
|
+
## Agent behavior
|
|
34
|
+
|
|
35
|
+
- Apply the smallest safe refactor that adds validation/auth boundaries first.
|
|
36
|
+
- Delegate framework primitive questions to official Expo API route guidance, then layer MDS project-specific rules (env boundaries, doc updates, Doctor compatibility).
|
|
37
|
+
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Resume work on an onboarded project by following MDS phase order from `project/todo.md`.
|
|
3
|
+
disable-model-invocation: true
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# /continue-development
|
|
7
|
+
|
|
8
|
+
Resume work on an onboarded project by following MDS phase order from `project/todo.md`.
|
|
9
|
+
|
|
10
|
+
## Arguments
|
|
11
|
+
|
|
12
|
+
- `projectPath`: onboarded app path (default: current directory).
|
|
13
|
+
|
|
14
|
+
## MCP-First Workflow
|
|
15
|
+
|
|
16
|
+
1. Confirm the `mr-djs-dev-suite` MCP server is available.
|
|
17
|
+
2. Call `continue_project` first to get the active-phase brief.
|
|
18
|
+
3. Pull `get_skill` for `continue-development` to enforce phase-first sequencing.
|
|
19
|
+
4. If blockers appear, use `doctor_scan_project` and `doctor_explain_result` for targeted remediation before feature work.
|
|
20
|
+
|
|
21
|
+
## CLI / Manual Fallback
|
|
22
|
+
|
|
23
|
+
1. If MCP is not configured, install it manually:
|
|
24
|
+
- `mds mcp install --client codex --scope project`
|
|
25
|
+
2. Direct CLI flow:
|
|
26
|
+
- `mds continue <projectPath>`
|
|
27
|
+
- `mds doctor <projectPath>` when blockers are unclear.
|
|
28
|
+
|
|
29
|
+
## Verification And Output
|
|
30
|
+
|
|
31
|
+
- Confirm the chosen task belongs to the active phase or has an explicit deferral note.
|
|
32
|
+
- Output: selected next task, blockers, and validation commands to run after implementation.
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Create a new Expo app with the MDS Super Stack flow, using this knowledge package as the shared source of truth for agent-facing text and the published CLI as the execution source of truth.
|
|
3
|
+
disable-model-invocation: true
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# /create-expo-super-stack
|
|
7
|
+
|
|
8
|
+
Create a new Expo app with the MDS Super Stack flow, using this knowledge package as the shared source of truth for agent-facing text and the published CLI as the execution source of truth.
|
|
9
|
+
|
|
10
|
+
## Arguments
|
|
11
|
+
|
|
12
|
+
- `parentDir`: folder where the new app directory should be created.
|
|
13
|
+
- `appName`: app folder name.
|
|
14
|
+
|
|
15
|
+
## MCP-First Workflow
|
|
16
|
+
|
|
17
|
+
1. Confirm the `mr-djs-dev-suite` MCP server is available.
|
|
18
|
+
2. Invoke the MCP prompt `create_expo_super_stack` from a parent directory when you want guided intake.
|
|
19
|
+
3. Keep the conversation one question per turn and summarize the captured choices before generation.
|
|
20
|
+
4. Treat the MCP prompt as the intake surface and the CLI as the generator, so CLI changes are picked up automatically when the published command changes.
|
|
21
|
+
5. After generation, move into the new app folder and invoke `continue_project` (or prompt `continue_mds_project`) for the first implementation session.
|
|
22
|
+
|
|
23
|
+
## CLI / Manual Fallback
|
|
24
|
+
|
|
25
|
+
1. If MCP is not configured, install it manually:
|
|
26
|
+
- `mds mcp install --client codex --scope project`
|
|
27
|
+
2. Direct CLI generation:
|
|
28
|
+
- `npx -y create-expo-super-stack <appName>`
|
|
29
|
+
3. Then onboard/continue from inside the generated app using the current CLI behavior:
|
|
30
|
+
- `mds continue <new-app-path>`
|
|
31
|
+
|
|
32
|
+
## Verification And Output
|
|
33
|
+
|
|
34
|
+
- Confirm generated app has `project/info.md`, `project/todo.md`, `project/style.md`, and `project/guidelines.md`.
|
|
35
|
+
- Output: generated app path, onboarding status, and immediate next command.
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Use when diagnosing broken behavior, flaky tooling, or unclear failures in Expo projects.
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
# Skill: Debugging
|
|
6
|
+
|
|
7
|
+
Use when diagnosing broken behavior, flaky tooling, or unclear failures in Expo projects.
|
|
8
|
+
|
|
9
|
+
## Main rule
|
|
10
|
+
|
|
11
|
+
Debug by narrowing scope quickly: reproduce, isolate, capture evidence, apply the smallest safe fix, then verify.
|
|
12
|
+
|
|
13
|
+
## Checks
|
|
14
|
+
|
|
15
|
+
- Reproduce the issue consistently and record exact command/path/error output.
|
|
16
|
+
- Confirm environment assumptions (platform, output mode, env vars, script path) match the failing context.
|
|
17
|
+
- Run targeted checks first (`mds doctor`, focused tests, route/file scans) before broad reruns.
|
|
18
|
+
- Separate root-cause signals from secondary cascade errors.
|
|
19
|
+
- Re-verify with the same reproduction path after the fix.
|
|
20
|
+
|
|
21
|
+
## Preferred structure
|
|
22
|
+
|
|
23
|
+
- Keep debugging notes concise in task output or project memory when the issue is recurring.
|
|
24
|
+
- Prefer deterministic scripts over ad-hoc manual sequences.
|
|
25
|
+
- Escalate from narrow test scope to broader validation only after targeted checks pass.
|
|
26
|
+
|
|
27
|
+
## Example fix
|
|
28
|
+
|
|
29
|
+
- Problem: Route crashes only on web server output with ambiguous stack traces.
|
|
30
|
+
- Fix: Reproduce in server mode, isolate browser-global usage in shared module, add guards, rerun targeted test and Doctor scan.
|
|
31
|
+
|
|
32
|
+
## Agent behavior
|
|
33
|
+
|
|
34
|
+
- Start with high-risk failures (security, data loss, crashers), then address lower-risk warnings.
|
|
35
|
+
- Keep users unblocked with concrete next commands and avoid speculative broad refactors before evidence is clear.
|
|
36
|
+
- Delegate framework primitive questions to official Expo or React Native guidance, then apply MDS reproduction discipline, Doctor checks, and project-memory context.
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Use before merging or releasing an Expo project to shared environments.
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
# Skill: Deployment Readiness
|
|
6
|
+
|
|
7
|
+
Use before merging or releasing an Expo project to shared environments.
|
|
8
|
+
|
|
9
|
+
## Main rule
|
|
10
|
+
|
|
11
|
+
Treat deployment as a repeatable checklist: pass local quality gates, verify runtime configuration, and document rollback expectations before ship.
|
|
12
|
+
|
|
13
|
+
## Checks
|
|
14
|
+
|
|
15
|
+
- Run lint, type-check, tests, Expo Doctor, and production build/profile checks when scripts exist.
|
|
16
|
+
- Verify env vars are documented and separated by client/server exposure level.
|
|
17
|
+
- Confirm output mode and hosting assumptions match the selected platform strategy.
|
|
18
|
+
- Confirm metadata/indexing basics are defined for web exports.
|
|
19
|
+
- Record release and rollback notes for the current change batch.
|
|
20
|
+
|
|
21
|
+
## Preferred structure
|
|
22
|
+
|
|
23
|
+
- Keep release checks in scripts that CI and agents can run consistently.
|
|
24
|
+
- Gate merge/publish flows on the same Doctor and package validation criteria.
|
|
25
|
+
- Keep deployment conventions in `project/guidelines.md` and release tasks in `project/todo.md`.
|
|
26
|
+
|
|
27
|
+
## Example fix
|
|
28
|
+
|
|
29
|
+
- Problem: Release pipeline runs tests but skips Expo Doctor and build profile checks.
|
|
30
|
+
- Fix: Add missing scripts, wire them into pre-merge checks, and document the required sequence in project memory.
|
|
31
|
+
|
|
32
|
+
## Agent behavior
|
|
33
|
+
|
|
34
|
+
- Run project-defined checks first; do not invent alternate release criteria.
|
|
35
|
+
- Delegate framework deployment primitives to official Expo guidance, then apply MDS workflow rules for docs, Doctor parity, and rollback readiness.
|
|
36
|
+
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Use when Expo or Metro local development servers fail to boot cleanly, hang, or bind to conflicting ports.
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
# Skill: Dev Server Management
|
|
6
|
+
|
|
7
|
+
Use when Expo or Metro local development servers fail to boot cleanly, hang, or bind to conflicting ports.
|
|
8
|
+
|
|
9
|
+
## Main rule
|
|
10
|
+
|
|
11
|
+
Use a deterministic reset path first; do not work around unstable server state with ad-hoc port fallbacks.
|
|
12
|
+
|
|
13
|
+
## Checks
|
|
14
|
+
|
|
15
|
+
- Run `mds clear-expo-start` before manual troubleshooting.
|
|
16
|
+
- If a conflict remains, run `mds free-port <port...>` for blocked ports.
|
|
17
|
+
- Confirm Expo/Metro caches are cleared before retrying startup.
|
|
18
|
+
- Treat fallback to port `8082` as an unresolved state that requires full reset.
|
|
19
|
+
- Confirm the same recovery scripts are available to teammates and automation.
|
|
20
|
+
|
|
21
|
+
## Preferred structure
|
|
22
|
+
|
|
23
|
+
- Keep project scripts for clear-expo-start and targeted port cleanup.
|
|
24
|
+
- Standardize a single restart path in project memory (`project/guidelines.md`).
|
|
25
|
+
- Use explicit “fresh” commands when booting local or production-like flows.
|
|
26
|
+
|
|
27
|
+
## Example fix
|
|
28
|
+
|
|
29
|
+
- Problem: `expo start` repeatedly falls back to `8082` after a partial crash.
|
|
30
|
+
- Fix: Run `mds clear-expo-start`, free remaining blocked ports, clear cache, and restart via the project's clear-expo-start script.
|
|
31
|
+
|
|
32
|
+
## Agent behavior
|
|
33
|
+
|
|
34
|
+
- Prefer established MDS cleanup commands over custom shell sequences.
|
|
35
|
+
- Avoid introducing alternate fallback port workflows that hide root-cause server state issues.
|
|
36
|
+
- Delegate Expo or Metro mechanics to official Expo guidance, then apply MDS reset commands, script consistency, and onboarding defaults.
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Use when adding, reviewing, or debugging app configuration and secrets handling.
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
# Skill: Environment Variables
|
|
6
|
+
|
|
7
|
+
Use when adding, reviewing, or debugging app configuration and secrets handling.
|
|
8
|
+
|
|
9
|
+
## Main rule
|
|
10
|
+
|
|
11
|
+
Keep a hard boundary between public client config and private server secrets; anything sensitive must never cross into `EXPO_PUBLIC_*` variables.
|
|
12
|
+
|
|
13
|
+
## Checks
|
|
14
|
+
|
|
15
|
+
- Confirm secrets (service-role keys, private tokens, payment secrets, passwords) are server-only.
|
|
16
|
+
- Confirm `EXPO_PUBLIC_*` values are safe to expose in client bundles.
|
|
17
|
+
- Validate required env keys exist for each runtime mode used by the project.
|
|
18
|
+
- Ensure Supabase anon key usage is scoped to client-safe flows and service-role usage is server-only.
|
|
19
|
+
- Verify env naming/docs are consistent across `.env` files, scripts, and project memory.
|
|
20
|
+
|
|
21
|
+
## Preferred structure
|
|
22
|
+
|
|
23
|
+
- Keep env access centralized through small typed config helpers.
|
|
24
|
+
- Separate client-safe config and server-only config modules.
|
|
25
|
+
- Document required keys and local setup in project memory and onboarding outputs.
|
|
26
|
+
|
|
27
|
+
## Example fix
|
|
28
|
+
|
|
29
|
+
- Problem: A route imports `EXPO_PUBLIC_SUPABASE_SERVICE_ROLE_KEY` from client config.
|
|
30
|
+
- Fix: Move service-role key to server-only env access, switch client flow to anon key, and update docs/checks.
|
|
31
|
+
|
|
32
|
+
## Agent behavior
|
|
33
|
+
|
|
34
|
+
- Prioritize removing exposure risk before refactoring for style.
|
|
35
|
+
- Delegate framework/env-loading primitives to official Expo guidance, then enforce MDS-specific security boundaries and Doctor alignment.
|
|
36
|
+
|