@rubytech/taskmaster 1.12.2 → 1.13.0

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.
Files changed (89) hide show
  1. package/dist/agents/auth-profiles/consolidate.js +72 -0
  2. package/dist/agents/auth-profiles/oauth.js +0 -24
  3. package/dist/agents/auth-profiles/paths.js +4 -4
  4. package/dist/agents/auth-profiles/store.js +8 -100
  5. package/dist/agents/model-fallback.js +26 -1
  6. package/dist/agents/pi-embedded-runner/run/payloads.js +8 -0
  7. package/dist/agents/session-transcript-repair.js +3 -2
  8. package/dist/agents/system-prompt.js +1 -0
  9. package/dist/agents/taskmaster-tools.js +2 -0
  10. package/dist/agents/tool-policy.js +2 -0
  11. package/dist/agents/tools/opening-hours-tool.js +92 -0
  12. package/dist/agents/tools/web-fetch.js +8 -3
  13. package/dist/agents/tools/web-search.js +7 -4
  14. package/dist/agents/workspace-migrations.js +47 -0
  15. package/dist/build-info.json +3 -3
  16. package/dist/commands/agents.commands.add.js +1 -32
  17. package/dist/config/defaults.js +1 -1
  18. package/dist/config/legacy.migrations.part-3.js +25 -4
  19. package/dist/config/sessions/transcript.js +31 -0
  20. package/dist/config/types.business.js +1 -0
  21. package/dist/config/zod-schema.js +33 -0
  22. package/dist/control-ui/assets/{index-CpaEIgQy.css → index-B8I8lMfz.css} +1 -1
  23. package/dist/control-ui/assets/{index-CP9IoaZp.js → index-BWqMMgRV.js} +537 -425
  24. package/dist/control-ui/assets/index-BWqMMgRV.js.map +1 -0
  25. package/dist/control-ui/index.html +2 -2
  26. package/dist/gateway/config-reload.js +1 -0
  27. package/dist/gateway/server-close.js +8 -0
  28. package/dist/gateway/server-methods/business.js +31 -0
  29. package/dist/gateway/server-methods/network.js +19 -6
  30. package/dist/gateway/server-methods/tailscale.js +2 -2
  31. package/dist/gateway/server-methods.js +5 -1
  32. package/dist/gateway/server.impl.js +42 -0
  33. package/dist/infra/heartbeat-infra-alert.js +54 -0
  34. package/dist/memory/manager.js +5 -5
  35. package/dist/web/auto-reply/monitor/process-message.js +24 -0
  36. package/dist/web/inbound/access-control.js +2 -1
  37. package/dist/web/inbound/monitor.js +32 -10
  38. package/dist/web/inbound/owner-mirror.js +35 -0
  39. package/package.json +1 -1
  40. package/skills/anthropic/SKILL.md +30 -0
  41. package/skills/anthropic/references/setup-guide.md +146 -0
  42. package/skills/google-ai/SKILL.md +3 -2
  43. package/skills/google-ai/references/setup-guide.md +94 -0
  44. package/skills/log-review/SKILL.md +45 -0
  45. package/skills/log-review/cron-template.json +21 -0
  46. package/skills/log-review/references/review-protocol.md +65 -0
  47. package/skills/openai/SKILL.md +28 -0
  48. package/skills/openai/references/setup-guide.md +122 -0
  49. package/taskmaster-docs/USER-GUIDE.md +31 -2
  50. package/templates/beagle-taxi/memory/public/investors-knowledge-base.md +230 -0
  51. package/templates/beagle-taxi/skills/beagle-taxi/SKILL.md +3 -1
  52. package/templates/customer/agents/admin/BOOTSTRAP.md +14 -2
  53. package/templates/customer/agents/public/AGENTS.md +15 -0
  54. package/templates/education-hero/agents/admin/BOOTSTRAP.md +14 -2
  55. package/templates/real-agent/agents/admin/AGENTS.md +139 -0
  56. package/templates/real-agent/agents/admin/HEARTBEAT.md +12 -0
  57. package/templates/real-agent/agents/admin/IDENTITY.md +11 -0
  58. package/templates/real-agent/agents/admin/SOUL.md +38 -0
  59. package/templates/real-agent/agents/public/AGENTS.md +183 -0
  60. package/templates/real-agent/agents/public/IDENTITY.md +8 -0
  61. package/templates/real-agent/agents/public/SOUL.md +75 -0
  62. package/templates/real-agent/memory/admin/.gitkeep +0 -0
  63. package/templates/real-agent/memory/public/contributors/adam-mackay.md +7 -0
  64. package/templates/real-agent/memory/public/contributors/alex-pelosi-buchanan.md +7 -0
  65. package/templates/real-agent/memory/public/contributors/jamie-fisher.md +7 -0
  66. package/templates/real-agent/memory/public/contributors/john-savage.md +7 -0
  67. package/templates/real-agent/memory/public/contributors/melanie-attwater.md +7 -0
  68. package/templates/real-agent/memory/public/contributors/regina-mangan.md +7 -0
  69. package/templates/real-agent/memory/public/contributors/richard-rawlings.md +7 -0
  70. package/templates/real-agent/memory/public/contributors/roger-black.md +7 -0
  71. package/templates/real-agent/memory/public/contributors/steve-backley.md +7 -0
  72. package/templates/real-agent/memory/public/courses/agency-blueprint/.gitkeep +0 -0
  73. package/templates/real-agent/memory/public/courses/podcast/.gitkeep +0 -0
  74. package/templates/real-agent/memory/public/courses/real-business/.gitkeep +0 -0
  75. package/templates/real-agent/memory/public/courses/real-coaching/.gitkeep +0 -0
  76. package/templates/real-agent/memory/public/courses/real-marketing/.gitkeep +0 -0
  77. package/templates/real-agent/memory/public/resources/.gitkeep +0 -0
  78. package/templates/real-agent/memory/shared/.gitkeep +0 -0
  79. package/templates/real-agent/memory/users/.gitkeep +0 -0
  80. package/templates/real-agent/skills/bespoke-coaching/SKILL.md +29 -0
  81. package/templates/real-agent/skills/bespoke-coaching/references/coaching-boundaries.md +56 -0
  82. package/templates/real-agent/skills/bespoke-coaching/references/feedback-framework.md +61 -0
  83. package/templates/real-agent/skills/bootstrap/SKILL.md +27 -0
  84. package/templates/real-agent/skills/bootstrap/references/onboarding-flow.md +63 -0
  85. package/templates/real-agent/skills/content-directory/SKILL.md +40 -0
  86. package/templates/real-agent/skills/content-directory/references/module-delivery.md +65 -0
  87. package/templates/real-agent/skills/content-directory/references/progress-tracking.md +47 -0
  88. package/templates/tradesupport/agents/admin/BOOTSTRAP.md +14 -2
  89. package/dist/control-ui/assets/index-CP9IoaZp.js.map +0 -1
@@ -0,0 +1,65 @@
1
+ # Module Delivery
2
+
3
+ ## Purpose
4
+
5
+ Deliver curriculum modules as interactive coaching conversations, not static content dumps.
6
+
7
+ ## Context to Gather
8
+
9
+ Before delivering a module:
10
+ 1. **What the member asked for** — specific topic, or browsing?
11
+ 2. **Their profile context** — career stage, goals, current challenges (from `memory/users/{phone}/profile.md`)
12
+ 3. **Their progress** — what they've already completed (from `memory/users/{phone}/progress.md`)
13
+
14
+ ## Where to Search
15
+
16
+ Search `memory/public/courses/{pillar}/` for module files. Each module is a markdown file with frontmatter:
17
+
18
+ ```yaml
19
+ ---
20
+ title: Module Title
21
+ contributor: Contributor Name
22
+ pillar: pillar-name
23
+ estimated_time: X minutes
24
+ access: free
25
+ video: https://pinata-url (optional)
26
+ ---
27
+ ```
28
+
29
+ If the member asks for a topic without specifying a module, search across all pillars for the best match.
30
+
31
+ ## How to Deliver
32
+
33
+ **Never paste the full module.** Teach through conversation:
34
+
35
+ 1. **Introduce** — What the module covers, who it's from, why it matters for this member specifically. Reference their profile context.
36
+
37
+ 2. **Teach the core concept** — Present the key insight or framework. Use the contributor's voice and perspective. "Adam's approach to this is..." or "Steve Backley's framework here is..."
38
+
39
+ 3. **Check understanding** — Ask the member to reflect. "How does this compare to how you currently handle...?" or "What would that look like for your patch?"
40
+
41
+ 4. **Go deeper** — Based on their response, expand on the areas they find most relevant. Skip parts that don't apply to their situation.
42
+
43
+ 5. **Offer the video** — If the module has a video link, offer it at the right moment: "Adam walks through a real example of this — want to watch it?" Don't force it.
44
+
45
+ 6. **Reflection questions** — After the core teaching, offer 2-3 reflection questions that help them apply the concept to their own business.
46
+
47
+ 7. **Bridge to next** — Recommend a logical next module or ask if they want to continue in this pillar.
48
+
49
+ ## Pacing
50
+
51
+ Don't rush. One concept at a time. Wait for the member to respond before moving to the next section. If they engage deeply with one part, stay there — depth beats breadth.
52
+
53
+ If a module is long, break it across multiple exchanges. The member controls the pace — "Want to continue?" or "Take your time, I'll be here."
54
+
55
+ ## When Content Doesn't Exist
56
+
57
+ If a member asks for something not in the curriculum:
58
+ 1. Acknowledge the gap honestly: "We don't have a specific module on that yet."
59
+ 2. Search memory for anything adjacent that might help.
60
+ 3. If nothing exists, note it: "I'll flag this as something the team should consider adding."
61
+ 4. Write a brief note to `memory/admin/` so the admin agent can surface it.
62
+
63
+ ## Tone
64
+
65
+ Expert tutor, not lecturer. You're walking alongside the member through the material, not reading it to them. React to their responses. Build on their experience. Make it personal.
@@ -0,0 +1,47 @@
1
+ # Progress Tracking
2
+
3
+ ## Purpose
4
+
5
+ Maintain an accurate record of each member's learning journey and use it to drive personalised recommendations.
6
+
7
+ ## When to Update Progress
8
+
9
+ Update `memory/users/{phone}/progress.md` after:
10
+ - A member completes a module (all key concepts covered, reflection done)
11
+ - A coaching session ends
12
+ - A member explicitly asks to bookmark or skip a module
13
+ - You learn something new about their goals or focus area
14
+
15
+ ## What to Record
16
+
17
+ ### Module Completion
18
+ Add to the "Modules Completed" section:
19
+ ```
20
+ - [YYYY-MM-DD] {pillar} / {module title}
21
+ ```
22
+
23
+ ### Current Focus
24
+ Update the "Current Focus" field when the member shifts topics or starts a new learning path.
25
+
26
+ ### Notes
27
+ Record anything that helps personalise future interactions:
28
+ - Topics they found most valuable
29
+ - Areas they struggled with
30
+ - Specific business context they shared (their patch, their agency focus, their brand positioning)
31
+
32
+ ## How to Use Progress Data
33
+
34
+ **For recommendations:** Check which pillars they've explored and which they haven't. Suggest unexplored pillars that match their goals. Don't repeat modules they've completed.
35
+
36
+ **For returning members:** When a member comes back after a gap, check their progress and reference it: "Last time we covered {topic}. Want to continue from there, or is there something new on your mind?"
37
+
38
+ **For coaching:** Progress data tells you what frameworks the member already knows. In coaching mode, you can reference: "Remember Adam's three questions from the listing presentation module? Apply that here."
39
+
40
+ ## When Members Ask About Progress
41
+
42
+ Summarise their journey conversationally:
43
+ - How many modules completed, across which pillars
44
+ - Their current focus area
45
+ - Suggested next steps based on goals and gaps
46
+
47
+ Don't present progress as a report — frame it as a conversation about their journey.
@@ -58,7 +58,19 @@ If the admin prefers to do it themselves, direct them to their Taskmaster setup
58
58
 
59
59
  These keys are optional — the assistant works without them. Don't pressure. If the admin wants to skip this and come back later, that's fine.
60
60
 
61
- ## Step 7: Explain What's Next
61
+ ## Step 7: Set Up Opening Hours
62
+
63
+ Let the admin know they can configure **opening hours** so the public assistant only responds during business hours. Outside those hours, customer messages are received silently — no reply, no read receipt — and the owner can handle them manually.
64
+
65
+ Direct them to the **Opening Hours** page in the control panel (under the Advanced section). From there they can:
66
+ - Enable or disable the opening hours gate
67
+ - Set the business timezone
68
+ - Configure per-day schedules (e.g., Mon–Fri 8am–6pm, Sat 9am–1pm)
69
+ - Mark specific dates as closed (e.g., bank holidays)
70
+
71
+ This is optional — if they don't set it up, the public assistant responds around the clock. They can also configure this later at any time, or ask you to do it using the `opening_hours` tool.
72
+
73
+ ## Step 8: Explain What's Next
62
74
 
63
75
  Tell them:
64
76
  - They can message anytime to update business info
@@ -66,7 +78,7 @@ Tell them:
66
78
  - They (admin) get full access to configure everything
67
79
  - You'll learn their business as you go
68
80
 
69
- ## Step 8: Complete Setup
81
+ ## Step 9: Complete Setup
70
82
 
71
83
  Once all steps are done, call the `bootstrap_complete` tool (no parameters needed). It will mark setup as complete so this guide never appears again.
72
84