@mr.dj2u/knowledge 0.1.6 → 0.1.8
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/dist/content/checklists/push-merge-loop.md +17 -17
- package/dist/content/checklists/unified-agent-bundle-validation.md +9 -9
- package/dist/content/examples/push-merge-loop.md +14 -14
- package/dist/content/examples/unified-agent-bundle-bootstrap.md +8 -8
- package/dist/content/guides/animation-performance.md +31 -1
- package/dist/content/guides/post-create-onboarding.md +140 -140
- package/dist/content/patterns/animation/animation-motion-selection.md +155 -0
- package/dist/content/patterns/api/api-routes.md +313 -313
- package/dist/content/patterns/api/error-handling.md +310 -310
- package/dist/content/patterns/database/drizzle-schema.md +279 -279
- package/dist/content/patterns/database/migrations.md +364 -364
- package/dist/content/patterns/database/query-organization.md +536 -536
- package/dist/content/patterns/database/relations.md +449 -449
- package/dist/content/patterns/deployment/build-configuration.md +440 -440
- package/dist/content/patterns/deployment/ci-cd-patterns.md +447 -447
- package/dist/content/patterns/deployment/environment-config.md +379 -379
- package/dist/content/patterns/deployment/hosting-setup.md +424 -424
- package/dist/content/patterns/project/configuration-patterns.md +459 -459
- package/dist/content/patterns/project/documentation-org.md +506 -506
- package/dist/content/patterns/project/folder-structure.md +397 -397
- package/dist/content/patterns/project/library-exports.md +464 -464
- package/dist/content/patterns/project/monorepo-structure.md +500 -500
- package/dist/content/patterns/routing/dynamic-routes.md +220 -220
- package/dist/content/patterns/routing/file-based-routing.md +185 -185
- package/dist/content/patterns/routing/route-groups.md +428 -428
- package/dist/content/patterns/state/persistence-middleware.md +520 -520
- package/dist/content/patterns/state/selector-hooks.md +537 -537
- package/dist/content/patterns/state/store-organization.md +538 -538
- package/dist/content/patterns/state/zustand-patterns.md +347 -347
- package/dist/content/patterns/styling/component-styling.md +467 -467
- package/dist/content/patterns/styling/responsive-patterns.md +397 -397
- package/dist/content/patterns/styling/theme-configuration.md +425 -425
- package/dist/content/patterns/styling/uniwind-setup.md +411 -411
- package/dist/content/prompts/continue-development.md +35 -35
- package/dist/content/prompts/fix-seo.md +29 -29
- package/dist/content/prompts/onboard-new-expo-app.md +11 -11
- package/dist/content/prompts/prepare-deploy.md +29 -29
- package/dist/content/prompts/project-research-plan.md +29 -29
- package/dist/content/prompts/push-merge-loop.md +25 -25
- package/dist/content/prompts/review-expo-project.md +29 -29
- package/dist/content/prompts/review-motion.md +58 -0
- package/dist/content/prompts/run-doctor.md +38 -38
- package/dist/content/prompts/wrap-up.md +67 -67
- package/dist/content/reference/create-expo-stack-uniwind.md +29 -29
- package/dist/content/reference/mcp-sdk-transport.md +30 -30
- package/dist/content/reference/reference-repo-evacuation.md +31 -31
- package/dist/content/resource-index.json +3 -0
- package/dist/content/skills/animation-motion.md +68 -0
- package/dist/content/skills/api-routes.md +33 -33
- package/dist/content/skills/continue-development.md +32 -32
- package/dist/content/skills/debugging.md +32 -32
- package/dist/content/skills/deployment.md +32 -32
- package/dist/content/skills/dev-server-management.md +32 -32
- package/dist/content/skills/env-vars.md +32 -32
- package/dist/content/skills/expo-router-architecture.md +33 -33
- package/dist/content/skills/expo-ssr-safety.md +32 -32
- package/dist/content/skills/plugin-creation.md +41 -41
- package/dist/content/skills/production-server-patterns.md +31 -31
- package/dist/content/skills/project-onboarding.md +31 -31
- package/dist/content/skills/research-plan-intake.md +32 -32
- package/dist/content/skills/seo-metadata.md +31 -31
- package/dist/content/skills/super-stack-startup.md +34 -34
- package/dist/content/skills/uniwind-theming.md +32 -32
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +27 -1
- package/dist/index.js.map +1 -1
- package/dist/patterns/index.d.ts +9 -1
- package/dist/patterns/index.d.ts.map +1 -1
- package/dist/patterns/index.js +17 -0
- package/dist/patterns/index.js.map +1 -1
- package/dist/prompts/index.d.ts.map +1 -1
- package/dist/prompts/index.js +17 -0
- package/dist/prompts/index.js.map +1 -1
- package/package.json +6 -1
|
@@ -1,17 +1,17 @@
|
|
|
1
|
-
# Push-Merge Loop Checklist
|
|
2
|
-
|
|
3
|
-
Use this checklist when running the PR loop into `test`.
|
|
4
|
-
|
|
5
|
-
1. Doctor CI pass: `mds doctor --ci`.
|
|
6
|
-
2. Stage intentional files only.
|
|
7
|
-
3. Create meaningful commit message.
|
|
8
|
-
4. Push branch.
|
|
9
|
-
5. Open/update PR to `test`.
|
|
10
|
-
6. Wait ~2 minutes before polling checks/comments.
|
|
11
|
-
7. Collect failed checks + review comments.
|
|
12
|
-
8. Fix issues locally.
|
|
13
|
-
9. Rerun Doctor CI.
|
|
14
|
-
10. Push and poll again.
|
|
15
|
-
11. Repeat up to 5 cycles.
|
|
16
|
-
12. Merge only when checks are green and blockers are cleared.
|
|
17
|
-
|
|
1
|
+
# Push-Merge Loop Checklist
|
|
2
|
+
|
|
3
|
+
Use this checklist when running the PR loop into `test`.
|
|
4
|
+
|
|
5
|
+
1. Doctor CI pass: `mds doctor --ci`.
|
|
6
|
+
2. Stage intentional files only.
|
|
7
|
+
3. Create meaningful commit message.
|
|
8
|
+
4. Push branch.
|
|
9
|
+
5. Open/update PR to `test`.
|
|
10
|
+
6. Wait ~2 minutes before polling checks/comments.
|
|
11
|
+
7. Collect failed checks + review comments.
|
|
12
|
+
8. Fix issues locally.
|
|
13
|
+
9. Rerun Doctor CI.
|
|
14
|
+
10. Push and poll again.
|
|
15
|
+
11. Repeat up to 5 cycles.
|
|
16
|
+
12. Merge only when checks are green and blockers are cleared.
|
|
17
|
+
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
# Unified Agent Bundle Validation Checklist
|
|
2
|
-
|
|
3
|
-
Phase 9 validation artifact intent:
|
|
4
|
-
|
|
5
|
-
1. Run Doctor (`--ci`) through the agent.
|
|
6
|
-
2. Fetch one guide via MCP resource (`animation-performance`).
|
|
7
|
-
3. Execute one CLI workflow (`mds continue` or `/push-merge-loop`).
|
|
8
|
-
4. Confirm tools/resources are visible in the target client.
|
|
9
|
-
|
|
1
|
+
# Unified Agent Bundle Validation Checklist
|
|
2
|
+
|
|
3
|
+
Phase 9 validation artifact intent:
|
|
4
|
+
|
|
5
|
+
1. Run Doctor (`--ci`) through the agent.
|
|
6
|
+
2. Fetch one guide via MCP resource (`animation-performance`).
|
|
7
|
+
3. Execute one CLI workflow (`mds continue` or `/push-merge-loop`).
|
|
8
|
+
4. Confirm tools/resources are visible in the target client.
|
|
9
|
+
|
|
@@ -1,14 +1,14 @@
|
|
|
1
|
-
# Push-Merge Loop Example
|
|
2
|
-
|
|
3
|
-
Example iteration log for `/push-merge-loop`:
|
|
4
|
-
|
|
5
|
-
- Iteration 1:
|
|
6
|
-
- Failed: `lint` and one requested review change.
|
|
7
|
-
- Fixes: remove dead import, update API guard clause.
|
|
8
|
-
- Result: `lint` green, one test still failing.
|
|
9
|
-
- Iteration 2:
|
|
10
|
-
- Failed: `test` in `packages/cli`.
|
|
11
|
-
- Fixes: update stale skill ID expectation.
|
|
12
|
-
- Result: all checks green.
|
|
13
|
-
- Merge: PR merged into `test`.
|
|
14
|
-
|
|
1
|
+
# Push-Merge Loop Example
|
|
2
|
+
|
|
3
|
+
Example iteration log for `/push-merge-loop`:
|
|
4
|
+
|
|
5
|
+
- Iteration 1:
|
|
6
|
+
- Failed: `lint` and one requested review change.
|
|
7
|
+
- Fixes: remove dead import, update API guard clause.
|
|
8
|
+
- Result: `lint` green, one test still failing.
|
|
9
|
+
- Iteration 2:
|
|
10
|
+
- Failed: `test` in `packages/cli`.
|
|
11
|
+
- Fixes: update stale skill ID expectation.
|
|
12
|
+
- Result: all checks green.
|
|
13
|
+
- Merge: PR merged into `test`.
|
|
14
|
+
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
# Unified Agent Bundle Bootstrap Example
|
|
2
|
-
|
|
3
|
-
Phase 9 bootstrap artifact intent:
|
|
4
|
-
|
|
5
|
-
1. Install MCP server config.
|
|
6
|
-
2. Install generated skills/prompts package.
|
|
7
|
-
3. Verify the agent can call Doctor + knowledge tools.
|
|
8
|
-
4. Verify the agent can run one CLI workflow.
|
|
1
|
+
# Unified Agent Bundle Bootstrap Example
|
|
2
|
+
|
|
3
|
+
Phase 9 bootstrap artifact intent:
|
|
4
|
+
|
|
5
|
+
1. Install MCP server config.
|
|
6
|
+
2. Install generated skills/prompts package.
|
|
7
|
+
3. Verify the agent can call Doctor + knowledge tools.
|
|
8
|
+
4. Verify the agent can run one CLI workflow.
|
|
@@ -19,12 +19,42 @@ https://expo.dev/blog/the-real-cost-of-react-native-animations-benchmarking-ever
|
|
|
19
19
|
complex UI-thread coordination.
|
|
20
20
|
- Animated view count is a budget. A single animated card is different from 100
|
|
21
21
|
animated rows.
|
|
22
|
+
- Treat parallax as its own motion class, not just "fancier Reanimated". Use it
|
|
23
|
+
when scroll depth supports a story: hero scenes, layered landing sections,
|
|
24
|
+
pinned product reveals, or depth cues that help orientation.
|
|
25
|
+
- Keep parallax light when possible. A few clearly separated layers usually read
|
|
26
|
+
better than many tiny offsets that all compete for attention.
|
|
27
|
+
- Scroll-linked scenes should simplify as they get denser:
|
|
28
|
+
- Native mobile hero/marketing sections can afford a handful of animated
|
|
29
|
+
layers when the screen is focused on that scene.
|
|
30
|
+
- Dense content screens and long lists should prefer simpler fades,
|
|
31
|
+
translations, or sticky section behavior over many interpolated layers.
|
|
32
|
+
- Web should degrade earlier than native when the effect depends on frequent
|
|
33
|
+
scroll interpolation across large sections.
|
|
34
|
+
- Large layered motion should have explicit budget notes nearby when it is
|
|
35
|
+
intentional: what is animating, why parallax is worth it, and how it should
|
|
36
|
+
simplify if performance drops.
|
|
37
|
+
|
|
38
|
+
## Parallax Budget Rules
|
|
39
|
+
|
|
40
|
+
- Prefer roughly 3-5 meaningful animated depth layers per scene before adding
|
|
41
|
+
more complexity.
|
|
42
|
+
- Be cautious once a single file stacks many `interpolate()` calls, multiple
|
|
43
|
+
`useAnimatedStyle()` blocks, or repeated scroll-linked rows.
|
|
44
|
+
- Do not combine heavy parallax, repeated list item motion, and broad layout
|
|
45
|
+
transitions in the same screen unless you have measured the release build and
|
|
46
|
+
confirmed it holds up.
|
|
47
|
+
- If web shares the same component tree, provide a simpler fallback when the
|
|
48
|
+
full depth effect is not essential to comprehension.
|
|
22
49
|
|
|
23
50
|
## Doctor And Onboarding Rules
|
|
24
51
|
|
|
25
52
|
- Warn when route or list files animate many repeated items without an explicit
|
|
26
53
|
performance note.
|
|
54
|
+
- Warn when parallax or scroll-linked scenes pile on many interpolation layers
|
|
55
|
+
without a nearby motion/performance note.
|
|
27
56
|
- Warn when benchmark claims are based only on debug builds.
|
|
28
57
|
- Ask during onboarding whether the app has long-running, list-heavy, or
|
|
29
58
|
gesture-heavy animation requirements.
|
|
30
|
-
|
|
59
|
+
- Ask whether hero sections or landing pages need parallax, pinned scenes, or
|
|
60
|
+
layered depth effects so the implementation path is chosen intentionally.
|
|
@@ -1,49 +1,49 @@
|
|
|
1
|
-
# Post-Create Expo Onboarding
|
|
2
|
-
|
|
3
|
-
MDS onboarding runs after `rn-new`, `create-expo-app`, `create-expo-stack`, or
|
|
4
|
-
another generator has created an Expo project. `create-expo-super-stack` wraps
|
|
5
|
-
that same idea by running `create-expo-stack` first and then applying the MDS
|
|
6
|
-
onboarding pass.
|
|
7
|
-
|
|
8
|
-
## Flow
|
|
9
|
-
|
|
10
|
-
1. Detect package manager, Expo SDK, Expo Router, app directory, aliases, and
|
|
11
|
-
styling stack.
|
|
12
|
-
2. Explain project memory first, then ask what the app is for, who it serves,
|
|
13
|
-
primary flows, data needs, and release/deployment intent.
|
|
14
|
-
3. Use friendly Clack prompts with visible defaults, helpful explanations, and
|
|
15
|
-
no blank required answers.
|
|
16
|
-
4. Derive defaults from selected answers instead of asking for comma-separated
|
|
17
|
-
internal keywords.
|
|
18
|
-
5. Offer rich boilerplate by default: project memory docs, exposition pages,
|
|
19
|
-
Uniwind repair for existing apps, Software Mansion core examples, Supabase or
|
|
20
|
-
local data guidance, MCP/Codex/Claude instructions, and CI/release safeguards.
|
|
21
|
-
6. Scaffold only selected pieces.
|
|
22
|
-
7. Add generated cleanup scripts such as `clear-expo-start` and `free-port`.
|
|
23
|
-
8. Install added dependencies, run `expo install --fix`, install known missing
|
|
24
|
-
Expo peers such as `expo-font` for `@expo/vector-icons`, then run Doctor.
|
|
25
|
-
|
|
26
|
-
## Agentic Onboarding (MCP)
|
|
27
|
-
|
|
28
|
-
The terminal `mds onboard` command writes the project memory files. The
|
|
29
|
-
agentic version is a conversation with Copilot, Claude Code, Codex, or Cursor that
|
|
30
|
-
fills those files in collaboratively.
|
|
31
|
-
|
|
32
|
-
Install **once, globally** (user scope, default) so every workspace gets
|
|
33
|
-
the prompts:
|
|
34
|
-
|
|
35
|
-
```bash
|
|
36
|
-
mds mcp install --client claude # merges into ~/.claude.json
|
|
37
|
-
mds mcp install --client codex # merges into ~/.codex/config.toml
|
|
38
|
-
mds mcp install --client cursor # merges into ~/.cursor/mcp.json
|
|
39
|
-
mds mcp install --dry-run # preview merge before writing
|
|
40
|
-
```
|
|
41
|
-
|
|
42
|
-
Restart the host (or run `claude mcp reload`) and the MDS prompts are
|
|
43
|
-
available from any workspace.
|
|
44
|
-
|
|
45
|
-
Two prompts and several callable MDS MCP tools ship with the server:
|
|
46
|
-
|
|
1
|
+
# Post-Create Expo Onboarding
|
|
2
|
+
|
|
3
|
+
MDS onboarding runs after `rn-new`, `create-expo-app`, `create-expo-stack`, or
|
|
4
|
+
another generator has created an Expo project. `create-expo-super-stack` wraps
|
|
5
|
+
that same idea by running `create-expo-stack` first and then applying the MDS
|
|
6
|
+
onboarding pass.
|
|
7
|
+
|
|
8
|
+
## Flow
|
|
9
|
+
|
|
10
|
+
1. Detect package manager, Expo SDK, Expo Router, app directory, aliases, and
|
|
11
|
+
styling stack.
|
|
12
|
+
2. Explain project memory first, then ask what the app is for, who it serves,
|
|
13
|
+
primary flows, data needs, and release/deployment intent.
|
|
14
|
+
3. Use friendly Clack prompts with visible defaults, helpful explanations, and
|
|
15
|
+
no blank required answers.
|
|
16
|
+
4. Derive defaults from selected answers instead of asking for comma-separated
|
|
17
|
+
internal keywords.
|
|
18
|
+
5. Offer rich boilerplate by default: project memory docs, exposition pages,
|
|
19
|
+
Uniwind repair for existing apps, Software Mansion core examples, Supabase or
|
|
20
|
+
local data guidance, MCP/Codex/Claude instructions, and CI/release safeguards.
|
|
21
|
+
6. Scaffold only selected pieces.
|
|
22
|
+
7. Add generated cleanup scripts such as `clear-expo-start` and `free-port`.
|
|
23
|
+
8. Install added dependencies, run `expo install --fix`, install known missing
|
|
24
|
+
Expo peers such as `expo-font` for `@expo/vector-icons`, then run Doctor.
|
|
25
|
+
|
|
26
|
+
## Agentic Onboarding (MCP)
|
|
27
|
+
|
|
28
|
+
The terminal `mds onboard` command writes the project memory files. The
|
|
29
|
+
agentic version is a conversation with Copilot, Claude Code, Codex, or Cursor that
|
|
30
|
+
fills those files in collaboratively.
|
|
31
|
+
|
|
32
|
+
Install **once, globally** (user scope, default) so every workspace gets
|
|
33
|
+
the prompts:
|
|
34
|
+
|
|
35
|
+
```bash
|
|
36
|
+
mds mcp install --client claude # merges into ~/.claude.json
|
|
37
|
+
mds mcp install --client codex # merges into ~/.codex/config.toml
|
|
38
|
+
mds mcp install --client cursor # merges into ~/.cursor/mcp.json
|
|
39
|
+
mds mcp install --dry-run # preview merge before writing
|
|
40
|
+
```
|
|
41
|
+
|
|
42
|
+
Restart the host (or run `claude mcp reload`) and the MDS prompts are
|
|
43
|
+
available from any workspace.
|
|
44
|
+
|
|
45
|
+
Two prompts and several callable MDS MCP tools ship with the server:
|
|
46
|
+
|
|
47
47
|
- `create_expo_super_stack` — invoke from a **parent folder** (e.g.
|
|
48
48
|
`F:\ReactNativeApps`) when the app folder does not exist yet. This is
|
|
49
49
|
now a thin orchestration prompt: `mds_runtime_versions` checks for
|
|
@@ -52,27 +52,27 @@ Two prompts and several callable MDS MCP tools ship with the server:
|
|
|
52
52
|
`create_expo_super_stack_intake_step` is only the manual fallback for
|
|
53
53
|
missing or ambiguous answers, and generation happens through
|
|
54
54
|
`create_expo_super_stack_generate`.
|
|
55
|
-
- `onboard_new_expo_app` — invoke from **inside an existing Expo app
|
|
56
|
-
folder** (a freshly generated one or a year-old project). Runs the
|
|
57
|
-
intake → normalize → plan → scaffold flow.
|
|
58
|
-
|
|
59
|
-
After generation, the user-dev should open the generated app folder
|
|
60
|
-
directly in a new agent session and run `mds continue`. That fresh
|
|
61
|
-
app-root session reduces token usage and saves money because future
|
|
62
|
-
searches, reads, and plans are scoped to the app instead of the parent
|
|
63
|
-
folder and old generator conversation.
|
|
64
|
-
|
|
65
|
-
Both prompts enforce or surface a **TodoForContext blocker** before
|
|
66
|
-
implementation work: they scan every `project/` file for the literal
|
|
67
|
-
marker `# TodoForContext(optional):` and ask the user to fill it in or
|
|
68
|
-
delete the marker line.
|
|
69
|
-
|
|
70
|
-
`mds doctor` mirrors this rule with a `todo-for-context markers`
|
|
71
|
-
error so the same blocker stops CI and editor surfaces until the user
|
|
72
|
-
fills the section or deletes the marker line.
|
|
73
|
-
|
|
74
|
-
### What's new in the agentic prompts and tools
|
|
75
|
-
|
|
55
|
+
- `onboard_new_expo_app` — invoke from **inside an existing Expo app
|
|
56
|
+
folder** (a freshly generated one or a year-old project). Runs the
|
|
57
|
+
intake → normalize → plan → scaffold flow.
|
|
58
|
+
|
|
59
|
+
After generation, the user-dev should open the generated app folder
|
|
60
|
+
directly in a new agent session and run `mds continue`. That fresh
|
|
61
|
+
app-root session reduces token usage and saves money because future
|
|
62
|
+
searches, reads, and plans are scoped to the app instead of the parent
|
|
63
|
+
folder and old generator conversation.
|
|
64
|
+
|
|
65
|
+
Both prompts enforce or surface a **TodoForContext blocker** before
|
|
66
|
+
implementation work: they scan every `project/` file for the literal
|
|
67
|
+
marker `# TodoForContext(optional):` and ask the user to fill it in or
|
|
68
|
+
delete the marker line.
|
|
69
|
+
|
|
70
|
+
`mds doctor` mirrors this rule with a `todo-for-context markers`
|
|
71
|
+
error so the same blocker stops CI and editor surfaces until the user
|
|
72
|
+
fills the section or deletes the marker line.
|
|
73
|
+
|
|
74
|
+
### What's new in the agentic prompts and tools
|
|
75
|
+
|
|
76
76
|
- **PHASE 0 file intake.** The agent offers to digest an existing
|
|
77
77
|
`project/info.md` and `project/style.md` if the user has them already.
|
|
78
78
|
Questions whose answers are unambiguous in the file are skipped; the
|
|
@@ -84,80 +84,80 @@ fills the section or deletes the marker line.
|
|
|
84
84
|
merges explicit overrides, returns missing or ambiguous fields, and
|
|
85
85
|
produces a ready-to-pass generate payload so the user is not forced
|
|
86
86
|
through redundant question-by-question discovery.
|
|
87
|
-
- **Android TV alongside Apple TV.** The platform multi-select now
|
|
88
|
-
includes Android TV. Android TV builds from the same Android target
|
|
89
|
-
with leanback config in `app.json`; Apple TV is a separate tvOS build
|
|
90
|
-
target via `react-native-tvos`. Selecting either records the intent
|
|
91
|
-
in project memory.
|
|
92
|
-
- **Shared CLI-backed intake contract.** The agentic CESS flow now uses
|
|
93
|
-
callable MCP tools backed by the shared `@mr.dj2u/cli` intake
|
|
94
|
-
contract. That keeps the questionnaire, defaults, dependency rules,
|
|
95
|
-
and flag mapping aligned with the published CLI behavior.
|
|
96
|
-
- **No silent defaults.** Guided intake must explicitly collect answers
|
|
97
|
-
or explicitly present visible defaults. If the CESS intake tools are
|
|
98
|
-
unavailable, the agent should stop and tell the user to refresh the
|
|
99
|
-
plugin or MCP install instead of inventing `--mds-yes` defaults.
|
|
87
|
+
- **Android TV alongside Apple TV.** The platform multi-select now
|
|
88
|
+
includes Android TV. Android TV builds from the same Android target
|
|
89
|
+
with leanback config in `app.json`; Apple TV is a separate tvOS build
|
|
90
|
+
target via `react-native-tvos`. Selecting either records the intent
|
|
91
|
+
in project memory.
|
|
92
|
+
- **Shared CLI-backed intake contract.** The agentic CESS flow now uses
|
|
93
|
+
callable MCP tools backed by the shared `@mr.dj2u/cli` intake
|
|
94
|
+
contract. That keeps the questionnaire, defaults, dependency rules,
|
|
95
|
+
and flag mapping aligned with the published CLI behavior.
|
|
96
|
+
- **No silent defaults.** Guided intake must explicitly collect answers
|
|
97
|
+
or explicitly present visible defaults. If the CESS intake tools are
|
|
98
|
+
unavailable, the agent should stop and tell the user to refresh the
|
|
99
|
+
plugin or MCP install instead of inventing `--mds-yes` defaults.
|
|
100
100
|
- **Runtime version diagnostics.** `mds_runtime_versions` reports the
|
|
101
101
|
active MCP server version, CLI version, concrete installed
|
|
102
102
|
`create-expo-super-stack` version, and the published generation path
|
|
103
103
|
in use.
|
|
104
|
-
- **Credits while waiting.** When generation kicks off, the agent
|
|
105
|
-
prints a recognition note for the upstream teams and individuals
|
|
106
|
-
whose work fills the MDS knowledge base.
|
|
107
|
-
- **Success message surfaced.** After a successful run, the agent
|
|
108
|
-
quotes the generator's `MDS onboarding complete` tail block back
|
|
109
|
-
verbatim so the Mr. DJ personal thank-you text appears in chat the same way
|
|
110
|
-
it does in a terminal CLI run.
|
|
111
|
-
- **MDS Continue handoff.** The agent runs `mds continue` from the
|
|
112
|
-
generated app folder, then tells the user-dev to open that app folder
|
|
113
|
-
in a fresh agent session to lower token usage and cost.
|
|
114
|
-
|
|
115
|
-
## Defaults
|
|
116
|
-
|
|
117
|
-
- Prefer Uniwind and Tailwind v4 for new projects.
|
|
118
|
-
- Keep route files thin and move business logic into features, services, hooks,
|
|
119
|
-
and utilities.
|
|
120
|
-
- Always add `project/info.md`, `project/todo.md`, `project/style.md`, and
|
|
121
|
-
`project/guidelines.md` when project memory is selected.
|
|
122
|
-
- Normalize existing `project/info.md` and `project/style.md` into canonical
|
|
123
|
-
sections while preserving unknown content under Imported Notes.
|
|
124
|
-
- Add `project/intake-agent.md` when context is thin or imported notes need a
|
|
125
|
-
follow-up agent conversation.
|
|
126
|
-
- Keep `project/style.md` visual-only; put technical and agent rules in
|
|
127
|
-
`project/guidelines.md`.
|
|
128
|
-
- Treat monorepo-aware scaffolding as a future step after the single-app MVP is
|
|
129
|
-
stable.
|
|
130
|
-
|
|
131
|
-
## VS Code & GitHub Copilot Integration
|
|
132
|
-
|
|
133
|
-
This guide is authored as canonical knowledge consumed by agent bundles; it is not the agent itself. To enable the generated Copilot/VS Code surface and the custom MDS agent in a workspace, regenerate the VS Code bundle and install the generated prompts/settings into the target repository or your user profile.
|
|
134
|
-
|
|
135
|
-
- Regenerate VS Code assets (from repository root):
|
|
136
|
-
|
|
137
|
-
```powershell
|
|
138
|
-
pnpm --filter @mr.dj2u/knowledge build:vscode
|
|
139
|
-
```
|
|
140
|
-
|
|
141
|
-
- Copy the generated workspace assets into your project (PowerShell):
|
|
142
|
-
|
|
143
|
-
```powershell
|
|
144
|
-
Copy-Item -Path .\plugins\vscode-copilot\.github\* -Destination . -Recurse -Force
|
|
145
|
-
Copy-Item -Path .\plugins\vscode-copilot\.vscode\* -Destination .\.vscode -Recurse -Force
|
|
146
|
-
```
|
|
147
|
-
|
|
148
|
-
- Then restart VS Code. Ensure the `GitHub Copilot Chat` extension is installed and enabled. The generated `.vscode/settings.json` enables agent skill locations and prompt file lookup under `.github/prompts`.
|
|
149
|
-
|
|
150
|
-
- If you prefer user-scope installs, copy the `user/.copilot` content into your user profile per the extension docs, or run `mds agent install --client codex --scope user` (if available) to automate the merge.
|
|
151
|
-
|
|
152
|
-
## Install Path & What This MD Is For
|
|
153
|
-
|
|
154
|
-
- This markdown is a human- and agent-facing guide. It documents the onboarding flow and explains what the agent prompts do. It is used as input to the `packages/knowledge` build which generates plugin/agent bundles for Codex, Claude Code, and VS Code Copilot.
|
|
155
|
-
- The agent itself is not this file — it is a runtime that loads generated prompts/skills from the plugin bundles or the MCP server. To activate the agent surfaces you must either:
|
|
156
|
-
- Install the MCP prompts via `mds mcp install --client <client>` (user or project scope), or
|
|
157
|
-
- Copy the generated plugin files from `plugins/vscode-copilot` / `plugins/codex` / `plugins/claude-code` into the target workspace or user profile and restart the corresponding client.
|
|
158
|
-
- If a host keeps using stale prompt or plugin behavior after republish,
|
|
159
|
-
refresh the local plugin cache, reinstall the MDS MCP server, and run
|
|
160
|
-
`mds_runtime_versions` from the host surface to confirm which version
|
|
161
|
-
is actually active.
|
|
162
|
-
|
|
163
|
-
If you want, I can: regenerate the VS Code bundle now, copy the assets into the current workspace, and verify Copilot sees the prompts. Say "Do it" and I'll run the build and copy steps for you.
|
|
104
|
+
- **Credits while waiting.** When generation kicks off, the agent
|
|
105
|
+
prints a recognition note for the upstream teams and individuals
|
|
106
|
+
whose work fills the MDS knowledge base.
|
|
107
|
+
- **Success message surfaced.** After a successful run, the agent
|
|
108
|
+
quotes the generator's `MDS onboarding complete` tail block back
|
|
109
|
+
verbatim so the Mr. DJ personal thank-you text appears in chat the same way
|
|
110
|
+
it does in a terminal CLI run.
|
|
111
|
+
- **MDS Continue handoff.** The agent runs `mds continue` from the
|
|
112
|
+
generated app folder, then tells the user-dev to open that app folder
|
|
113
|
+
in a fresh agent session to lower token usage and cost.
|
|
114
|
+
|
|
115
|
+
## Defaults
|
|
116
|
+
|
|
117
|
+
- Prefer Uniwind and Tailwind v4 for new projects.
|
|
118
|
+
- Keep route files thin and move business logic into features, services, hooks,
|
|
119
|
+
and utilities.
|
|
120
|
+
- Always add `project/info.md`, `project/todo.md`, `project/style.md`, and
|
|
121
|
+
`project/guidelines.md` when project memory is selected.
|
|
122
|
+
- Normalize existing `project/info.md` and `project/style.md` into canonical
|
|
123
|
+
sections while preserving unknown content under Imported Notes.
|
|
124
|
+
- Add `project/intake-agent.md` when context is thin or imported notes need a
|
|
125
|
+
follow-up agent conversation.
|
|
126
|
+
- Keep `project/style.md` visual-only; put technical and agent rules in
|
|
127
|
+
`project/guidelines.md`.
|
|
128
|
+
- Treat monorepo-aware scaffolding as a future step after the single-app MVP is
|
|
129
|
+
stable.
|
|
130
|
+
|
|
131
|
+
## VS Code & GitHub Copilot Integration
|
|
132
|
+
|
|
133
|
+
This guide is authored as canonical knowledge consumed by agent bundles; it is not the agent itself. To enable the generated Copilot/VS Code surface and the custom MDS agent in a workspace, regenerate the VS Code bundle and install the generated prompts/settings into the target repository or your user profile.
|
|
134
|
+
|
|
135
|
+
- Regenerate VS Code assets (from repository root):
|
|
136
|
+
|
|
137
|
+
```powershell
|
|
138
|
+
pnpm --filter @mr.dj2u/knowledge build:vscode
|
|
139
|
+
```
|
|
140
|
+
|
|
141
|
+
- Copy the generated workspace assets into your project (PowerShell):
|
|
142
|
+
|
|
143
|
+
```powershell
|
|
144
|
+
Copy-Item -Path .\plugins\vscode-copilot\.github\* -Destination . -Recurse -Force
|
|
145
|
+
Copy-Item -Path .\plugins\vscode-copilot\.vscode\* -Destination .\.vscode -Recurse -Force
|
|
146
|
+
```
|
|
147
|
+
|
|
148
|
+
- Then restart VS Code. Ensure the `GitHub Copilot Chat` extension is installed and enabled. The generated `.vscode/settings.json` enables agent skill locations and prompt file lookup under `.github/prompts`.
|
|
149
|
+
|
|
150
|
+
- If you prefer user-scope installs, copy the `user/.copilot` content into your user profile per the extension docs, or run `mds agent install --client codex --scope user` (if available) to automate the merge.
|
|
151
|
+
|
|
152
|
+
## Install Path & What This MD Is For
|
|
153
|
+
|
|
154
|
+
- This markdown is a human- and agent-facing guide. It documents the onboarding flow and explains what the agent prompts do. It is used as input to the `packages/knowledge` build which generates plugin/agent bundles for Codex, Claude Code, and VS Code Copilot.
|
|
155
|
+
- The agent itself is not this file — it is a runtime that loads generated prompts/skills from the plugin bundles or the MCP server. To activate the agent surfaces you must either:
|
|
156
|
+
- Install the MCP prompts via `mds mcp install --client <client>` (user or project scope), or
|
|
157
|
+
- Copy the generated plugin files from `plugins/vscode-copilot` / `plugins/codex` / `plugins/claude-code` into the target workspace or user profile and restart the corresponding client.
|
|
158
|
+
- If a host keeps using stale prompt or plugin behavior after republish,
|
|
159
|
+
refresh the local plugin cache, reinstall the MDS MCP server, and run
|
|
160
|
+
`mds_runtime_versions` from the host surface to confirm which version
|
|
161
|
+
is actually active.
|
|
162
|
+
|
|
163
|
+
If you want, I can: regenerate the VS Code bundle now, copy the assets into the current workspace, and verify Copilot sees the prompts. Say "Do it" and I'll run the build and copy steps for you.
|
|
@@ -0,0 +1,155 @@
|
|
|
1
|
+
# Motion Implementation Selection
|
|
2
|
+
|
|
3
|
+
## Description
|
|
4
|
+
|
|
5
|
+
Animation work should start with intent, not library preference. This pattern
|
|
6
|
+
helps choose between simple platform transitions, Reanimated, Lottie, and
|
|
7
|
+
parallax or scroll-linked motion based on what the interface is trying to
|
|
8
|
+
communicate and how much performance budget the screen can afford.
|
|
9
|
+
|
|
10
|
+
It is seeded from layered landing-page motion in `time2pay` plus the
|
|
11
|
+
multi-layer scroll examples from the Quantum Jam project, where depth is used
|
|
12
|
+
intentionally instead of sprinkling animation across unrelated UI.
|
|
13
|
+
|
|
14
|
+
## When to Use
|
|
15
|
+
|
|
16
|
+
**Use this pattern** when:
|
|
17
|
+
|
|
18
|
+
- The user says an animation feels janky or unsatisfying.
|
|
19
|
+
- A screen mixes several animation styles and needs a cleaner implementation
|
|
20
|
+
choice.
|
|
21
|
+
- You are deciding whether something should be a fade, a layout transition, a
|
|
22
|
+
Reanimated interaction, a Lottie asset, or a parallax scene.
|
|
23
|
+
- A landing page or hero section wants layered depth, pinned scenes, or
|
|
24
|
+
scroll-linked reveals.
|
|
25
|
+
|
|
26
|
+
## Motion Selection Matrix
|
|
27
|
+
|
|
28
|
+
### One-shot transition
|
|
29
|
+
|
|
30
|
+
Use for:
|
|
31
|
+
- Small enter/exit fades
|
|
32
|
+
- Simple banners, cards, and modals
|
|
33
|
+
- Brief route-adjacent transitions with low component count
|
|
34
|
+
|
|
35
|
+
Prefer:
|
|
36
|
+
- Platform or native transitions
|
|
37
|
+
- Lightweight Reanimated enter/exit helpers only when already in use nearby
|
|
38
|
+
|
|
39
|
+
Avoid:
|
|
40
|
+
- Rebuilding the whole screen around shared values just to fade a few elements
|
|
41
|
+
|
|
42
|
+
### Layout transition
|
|
43
|
+
|
|
44
|
+
Use for:
|
|
45
|
+
- Expanding sections
|
|
46
|
+
- Reordering compact content
|
|
47
|
+
- Small layout shifts that should feel connected
|
|
48
|
+
|
|
49
|
+
Prefer:
|
|
50
|
+
- Reanimated layout transitions when layout coupling is the main problem
|
|
51
|
+
|
|
52
|
+
Avoid:
|
|
53
|
+
- Running the same heavy layout animation on long repeated lists
|
|
54
|
+
|
|
55
|
+
### Gesture-driven motion
|
|
56
|
+
|
|
57
|
+
Use for:
|
|
58
|
+
- Drag, swipe, sheet, or scroll-coupled controls
|
|
59
|
+
- Motion that depends on continuous user input
|
|
60
|
+
|
|
61
|
+
Prefer:
|
|
62
|
+
- Reanimated on the UI thread
|
|
63
|
+
|
|
64
|
+
Avoid:
|
|
65
|
+
- JS-thread animation paths for tight gesture loops
|
|
66
|
+
|
|
67
|
+
### List-heavy motion
|
|
68
|
+
|
|
69
|
+
Use for:
|
|
70
|
+
- Large repeated rows
|
|
71
|
+
- Feed item enter/exit motion
|
|
72
|
+
- Repeated cards inside FlatList, FlashList, or mapped collections
|
|
73
|
+
|
|
74
|
+
Prefer:
|
|
75
|
+
- Simple, consistent motion with a clear budget
|
|
76
|
+
- Native or lightweight paths when the same animation repeats many times
|
|
77
|
+
|
|
78
|
+
Avoid:
|
|
79
|
+
- Many simultaneous animated rows with custom interpolation logic unless
|
|
80
|
+
measured and justified
|
|
81
|
+
|
|
82
|
+
### Loading animation
|
|
83
|
+
|
|
84
|
+
Use for:
|
|
85
|
+
- Branded loops
|
|
86
|
+
- Focused status moments
|
|
87
|
+
- Empty/loading scenes that benefit from illustration
|
|
88
|
+
|
|
89
|
+
Prefer:
|
|
90
|
+
- Lottie for self-contained loops
|
|
91
|
+
- Small skeleton or opacity transitions for utilitarian loading states
|
|
92
|
+
|
|
93
|
+
Avoid:
|
|
94
|
+
- Large always-running animations across dense work screens
|
|
95
|
+
|
|
96
|
+
### Parallax or scroll-linked motion
|
|
97
|
+
|
|
98
|
+
Use for:
|
|
99
|
+
- Hero motion on landing pages
|
|
100
|
+
- Layered background depth
|
|
101
|
+
- Pinned scenes and product storytelling
|
|
102
|
+
- Scroll-linked reveals where depth helps orientation or emphasis
|
|
103
|
+
|
|
104
|
+
Prefer:
|
|
105
|
+
- Reanimated with a small number of meaningful layers
|
|
106
|
+
- Scene-level helpers that isolate interpolation logic
|
|
107
|
+
- Simpler web fallbacks when the full effect is not essential
|
|
108
|
+
|
|
109
|
+
Avoid:
|
|
110
|
+
- Turning every section into its own parallax rig
|
|
111
|
+
- Dense route files packed with many interpolations and animated rows
|
|
112
|
+
|
|
113
|
+
## Parallax Section
|
|
114
|
+
|
|
115
|
+
### Layered background motion
|
|
116
|
+
|
|
117
|
+
- Use a few strong layers with different depth speeds.
|
|
118
|
+
- Make sure each layer has a visual reason to exist.
|
|
119
|
+
- Keep decorative motion behind core content rather than fighting it.
|
|
120
|
+
|
|
121
|
+
### Pinned scenes
|
|
122
|
+
|
|
123
|
+
- Use when a section needs a short storytelling beat during scroll.
|
|
124
|
+
- Keep the pinned duration purposeful; long pinned scenes become work for the
|
|
125
|
+
user if the content payoff is weak.
|
|
126
|
+
|
|
127
|
+
### Staggered depth
|
|
128
|
+
|
|
129
|
+
- Let foreground, midground, and background move at clearly different rates.
|
|
130
|
+
- Favor readable separation over tiny offsets across many elements.
|
|
131
|
+
|
|
132
|
+
### Budget rules
|
|
133
|
+
|
|
134
|
+
- Prefer roughly 3-5 layers in a scene before adding more.
|
|
135
|
+
- Be cautious when a single file accumulates many `interpolate()` calls or
|
|
136
|
+
several `useAnimatedStyle()` blocks.
|
|
137
|
+
- Simplify sooner on web and on dense native screens than on a dedicated mobile
|
|
138
|
+
hero section.
|
|
139
|
+
- Add a nearby motion/performance note when a heavy scene is intentional.
|
|
140
|
+
|
|
141
|
+
## Verification Checklist
|
|
142
|
+
|
|
143
|
+
- Classify each animation before changing its implementation.
|
|
144
|
+
- Verify the release build, not just debug mode.
|
|
145
|
+
- Check web fallback behavior if the scene is shared cross-platform.
|
|
146
|
+
- Confirm repeated rows are not doing the same expensive motion hundreds of
|
|
147
|
+
times.
|
|
148
|
+
- Confirm parallax scenes still feel readable when motion is reduced or
|
|
149
|
+
simplified.
|
|
150
|
+
|
|
151
|
+
## Related Guidance
|
|
152
|
+
|
|
153
|
+
- `mds://guides/animation-performance`
|
|
154
|
+
- `mds://skills/animation-motion`
|
|
155
|
+
- `mds://skills/debugging`
|