flowstate-epic-flowstate-apps-epicdm-flowstate-app-todo
Package-local agent skill for @epicdm/flowstate-app-todo.
Tags
Publisher
Versions
1 version published — latest: 1.0.0
- 1.0.0publishedInvalid Date
Skill
flowstate-app-todo Package Skill
Package: @epicdm/flowstate-app-todo
Repository: epic-flowstate-apps
Path: packages/flowstate-app-todo
Version: 1.0.0
Use this published Dojo skill as the package-level entrypoint. For detailed workflows, use the package-local skills listed below.
Primary Package Workflow
FlowState Todo App
Status: Active
Purpose: Keep @epicdm/flowstate-app-todo changes aligned with its host plugin and task UI.
Scope: packages/flowstate-app-todo.
Trigger: Use when changing Todo app routing, plugin metadata, sidebar links, commands, or task pages.
Input: src/index.ts, src/plugin.ts, src/App.tsx, src/router/index.tsx, flowstate.plugin.json, package.json.
Output: A Todo app change that can still load through the FlowState host.
Workflow
1. Confirm The Host Contract
Check src/plugin.ts for todoPlugin.id, route, config.basePath, and lazy component import. Cross-check flowstate.plugin.json for route /apps/todo, sidebar links /list and /new, and command ids beginning with todo..
2. Keep Routing Mode Safe
Before editing task pages, inspect src/router/index.tsx. It branches on useFlowstateAppConfig().useHostRouter; do not hard-code assumptions that only work in standalone mode.
3. Treat Manifest Commands As Contributions
flowstate.plugin.json declares create, complete, delete, edit, filter, show, and hide commands. This package does not currently expose a command registrar, so do not claim command behavior is implemented unless a handler is added and verified.
Verification
Run yarn workspace @epicdm/flowstate-app-todo typecheck for TypeScript changes and yarn workspace @epicdm/flowstate-app-todo build for module federation changes. yarn workspace @epicdm/flowstate-app-todo test currently echoes "No tests yet".
Composition
Use todo-rxdb-contract before changing fields in src/db/schema.ts, src/db/types.ts, or src/db/collections.ts.
Pitfalls
package.jsondev port3223collides withflowstate-app-servers.- Do not edit
.flowstate/dojo; it is a generated prototype. - Do not add UI-only behavior that conflicts with manifest command names.
Done When
Plugin, manifest, router, and changed pages agree on ids and paths, and verification results are recorded.
Package Skill Inventory
Package Skill Inventory: @epicdm/flowstate-app-todo
Package Context
packages/flowstate-app-todo is a small module-federated React app for lightweight tasks. Its useful package-local skills should stay small: one app maintenance orchestrator and one RxDB contract reference.
Skill Map
| Skill | Type | Trigger | Teaches | Evidence | Depends On | Dojo |
|---|---|---|---|---|---|---|
flowstate-app-todo | orchestrator | Maintaining or integrating the todo app | Plugin, router, commands, verification | src/index.ts, src/plugin.ts, flowstate.plugin.json, src/router/index.tsx | app framework skills | ready-after-review |
todo-rxdb-contract | reference | Changing todo persistence fields or collection metadata | Schema/types/collections alignment | src/db/schema.ts, src/db/types.ts, src/db/collections.ts | collections/RxDB skills | ready-after-review |
Anti-Sprawl Decision: Two skills are enough because the package has one small app surface and one persistence contract; page components are not independent agent workflows yet.
Feature Coverage
| Feature Group | Source Evidence | Covered By | Notes |
|---|---|---|---|
| App/plugin/router | src/App.tsx, src/plugin.ts, src/router/index.tsx | flowstate-app-todo | Includes base path and host router behavior. |
| Commands/menus/sidebar | flowstate.plugin.json | flowstate-app-todo | Command handlers are not source-backed in package. |
| Todo schema/types | src/db/* | todo-rxdb-contract | Keep all three DB files synchronized. |
Composition Model
Use flowstate-app-todo first for app changes. Switch to todo-rxdb-contract when data shape or collection registration changes.
Deferred Skills
- Command handler skill: deferred until source-backed command dispatch exists.
- Test skill: deferred because there are no package-local todo tests.
Review Questions
- Should Todo and Servers share port
3223or should one package move? - Where should host command handlers for
todo.*live?
Review Gate
Package Skills Review: @epicdm/flowstate-app-todo
Verdict
Pass with fixes
Findings
| Severity | Skill | Issue | Evidence | Required Fix |
|---|---|---|---|---|
| Minor | flowstate-app-todo | Verification is limited by missing tests. | package.json test script echoes "No tests yet". | Add real tests before Dojo publication beyond local reference use. |
Coverage
| Feature Group | Status | Skill | Notes |
|---|---|---|---|
| Plugin/routing | Covered | flowstate-app-todo | Source-backed by src/plugin.ts and router. |
| Todo DB contract | Covered | todo-rxdb-contract | Source-backed by src/db/*. |
| Manifest command behavior | Deferred | flowstate-app-todo | Contributions exist, handlers not found. |
Drift and Contract Risks
| Area | Risk | Evidence | Decision |
|---|---|---|---|
| Dev port | Todo and Servers both use 3223. | Both package.json files. | Record as existing drift. |
| Dojo | Generated feature-list prototype. | .flowstate/dojo/*. | Do not publish or edit. |
Dojo Publication Decision
Defer. Local skills are useful, but Dojo publication should wait for real command-handler evidence or tests.
Follow-Up Work
- Add package-local tests for router and schema behavior.
- Decide whether manifest commands need a Todo command registrar.
Usage
Start with this skill to understand the package purpose, then use the package-local focused skills for specific workflows. Keep this Dojo version aligned with packages/flowstate-app-todo/package.json. Do not treat generated feature lists as lessons; use workflow evidence from CODE-REVIEW.md, SKILL-INVENTORY.md, and REVIEW.md.
Install
Run this in your project to install via CLI:
fscloud dojo skill install flowstate-epic-flowstate-apps-epicdm-flowstate-app-todo --target <target> --out ./skillsReplace <target> with your agent target identifier. See the CLI docs for details.