@rubytech/taskmaster 1.10.0 → 1.11.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.
@@ -0,0 +1,64 @@
1
+ # Daily Review Protocol
2
+
3
+ Run this protocol on schedule or when triggered by an admin. Be thorough in analysis but concise in output.
4
+
5
+ ## Step 1: Conversation Scan
6
+
7
+ Search all sessions from the review period (typically last 24 hours):
8
+ - Public agent conversations (customer enquiries, feedback, objections)
9
+ - Admin conversations (decisions, strategy discussions, new directions)
10
+ - Group chats (partner feedback, team discussions)
11
+
12
+ **What to look for:**
13
+ - Questions the public agent couldn't answer or answered poorly — content gap
14
+ - Pain points or frustrations mentioned repeatedly — messaging opportunity
15
+ - New use cases, verticals, or audiences mentioned — market intel
16
+ - Objections raised that aren't addressed in existing materials — sales gap
17
+ - Positive feedback or testimonials — social proof opportunity
18
+ - Contact or relationship signals — relationship development
19
+
20
+ ## Step 2: Materials Audit
21
+
22
+ Search memory for the business's existing materials — documents, FAQs, guides, outreach trackers, website copy, pitch materials, training content, or anything the business maintains.
23
+
24
+ Compare findings from Step 1 against those materials:
25
+ - Are common questions covered in published content?
26
+ - Does the public-facing copy still reflect current positioning and offerings?
27
+ - Are contact lists and outreach records current?
28
+ - Are any working hypotheses or strategies validated or invalidated by recent conversations?
29
+
30
+ Don't assume which materials exist — discover them by searching memory.
31
+
32
+ ## Step 3: Opportunity Tracking
33
+
34
+ Check for signals:
35
+ - Inbound enquiries from unexpected verticals or audiences
36
+ - Partners or contacts mentioning specific needs the business could serve
37
+ - Competitors mentioned in conversations
38
+ - Pricing feedback or willingness-to-pay signals
39
+ - Feature or service requests that indicate market direction
40
+
41
+ ## Step 4: Draft Improvements
42
+
43
+ For each gap or opportunity found:
44
+ 1. Write the actual content (FAQ entry, pitch angle, email draft, updated copy)
45
+ 2. Save to memory for admin review
46
+ 3. Include in the summary with a one-line description
47
+
48
+ **Don't just flag — fix.** Admin reviews and approves; you do the drafting.
49
+
50
+ ## Step 5: Relationship Check
51
+
52
+ Review active relationships:
53
+ - Any contacts who haven't responded in 7+ days? Flag for follow-up
54
+ - Any new contacts who need onboarding or introductory materials?
55
+ - Any partners or collaborators who gave feedback that needs acting on?
56
+
57
+ ## Step 6: Housekeeping
58
+
59
+ Scan scheduled jobs (cron) and clean up any that are in the past and not set to recur.
60
+
61
+ ## Step 7: Summary Output
62
+
63
+ Compose the summary following the format defined in SKILL.md.
64
+ The cron job or admin session takes care of delivery.
@@ -25,10 +25,12 @@ If you received a Taskmaster device:
25
25
 
26
26
  > **WiFi:** Your device needs an internet connection. You can plug a network cable directly into it to get started, then connect to WiFi from the Control Panel (see "WiFi" below). Need help? Message us on WhatsApp at **+44 7591 215452** or visit [taskmaster.bot](https://www.taskmaster.bot/).
27
27
 
28
- Then open your web browser on any device connected to the same WiFi and go to:
28
+ Then open your web browser on any device connected to the same WiFi network and go to:
29
29
 
30
30
  **http://taskmaster.local:18789**
31
31
 
32
+ > **Same network required:** The `.local` address only works when your phone/laptop and the Taskmaster device are on the **same network subnet**. If the Pi is plugged into Ethernet and your phone is on WiFi, some routers put them on separate subnets — in that case, connect the Pi to WiFi instead (see "WiFi" below), or connect both devices to the same wired or wireless network.
33
+
32
34
  ### Option B: Install on a Raspberry Pi (or any Linux OS) yourself
33
35
 
34
36
  You'll need a Raspberry Pi running Raspberry Pi OS with an internet connection (ethernet or WiFi).
@@ -46,6 +48,8 @@ curl -fsSL https://taskmaster.bot/install.sh | sudo bash
46
48
  4. Open a browser on any device on the same Wi-Fi network and go to: **http://taskmaster.local:18789/setup**
47
49
 
48
50
  > After installation, Taskmaster runs in the background and starts automatically when the Pi restarts. It can take up to 2 minutes to come back online after a power cycle. You can disconnect the monitor and keyboard.
51
+ >
52
+ > **Same network required:** The `.local` address only works when your phone/laptop and the Taskmaster device are on the **same network subnet**. If the Pi is on Ethernet and your phone is on WiFi, some routers put them on separate subnets — in that case, connect the Pi to WiFi instead (see "WiFi" below), or ensure your router bridges Ethernet and WiFi onto the same subnet.
49
53
 
50
54
  ### Option C: Install on a Mac
51
55
 
@@ -502,6 +506,19 @@ Your assistant learns your customers, their service history, and your pricing th
502
506
 
503
507
  All outreach messages are sent as your assistant — customers reply normally and the conversation continues.
504
508
 
509
+ ### Daily Strategic Review
510
+
511
+ Taskmaster ships with a pre-configured Daily Strategic Review that analyses your recent conversations, audits your business materials, and suggests improvements. It runs as a scheduled event but is **paused by default** — you choose when to enable it.
512
+
513
+ **To enable:**
514
+ 1. Open the Control Panel
515
+ 2. Go to **Advanced** → **Events**
516
+ 3. Find **🔭 Daily Strategic Review** and enable it
517
+
518
+ Once enabled, the review runs daily at 7:00 AM (your device's timezone). Results appear in the web chat, and are also sent via WhatsApp if you have an admin phone number connected.
519
+
520
+ You can edit the schedule, change the time, or disable it at any time from the Events tab.
521
+
505
522
  ### Conversations & Sessions
506
523
 
507
524
  Your assistant has full access to conversation history across all channels — WhatsApp, webchat, iMessage, and group chats. It can find specific messages, review entire conversations, and give you an overview of all activity.
@@ -948,6 +965,12 @@ sudo sed -i "s/127\.0\.1\.1.*/127.0.1.1\tdave/" /etc/hosts
948
965
  sudo systemctl restart avahi-daemon
949
966
  ```
950
967
 
968
+ > **Chromium lock after hostname change:** If Chromium is installed on the Pi and won't launch after changing the hostname (error: "profile appears to be in use by another Chromium process on another computer"), the old hostname left a stale lock file. Fix:
969
+ > ```bash
970
+ > rm -rf ~/.config/chromium/Singleton*
971
+ > chromium
972
+ > ```
973
+
951
974
  **Changing the hostname (macOS):**
952
975
 
953
976
  ```bash
@@ -975,7 +998,7 @@ After flushing, open your browser and navigate to the new URL (e.g. `http://dave
975
998
  If the Pi checks pass but the control panel still doesn't load from another device:
976
999
 
977
1000
  1. **Use the IP address directly** — on the Pi, run `hostname -I` to get its IP address, then open `http://192.168.1.XXX:18789` (use your IP and port) from the other device. If this works, the problem is mDNS resolution, not the gateway.
978
- 2. **Check you're on the same network** — mDNS only works between devices on the same WiFi/LAN. It won't work across VLANs or guest networks.
1001
+ 2. **Check you're on the same subnet** — mDNS only works between devices on the same network subnet. It won't work across separate subnets, VLANs, or guest networks. A common cause: the Pi is on Ethernet while your device is on WiFi, and your router assigns them to different subnets. Check by comparing the first three groups of your IP addresses (e.g. if the Pi is `192.168.88.4` and your laptop is `192.168.10.172`, they're on different subnets).
979
1002
  3. **Contact support** with: what you changed (port/hostname), the output of `hostname`, `grep 127.0.1.1 /etc/hosts`, and `taskmaster daemon status`.
980
1003
 
981
1004
  ### Static IP Address
@@ -999,11 +1022,11 @@ This is entirely optional and is a network preference, not a Taskmaster requirem
999
1022
 
1000
1023
  If you can't load the Control Panel in your browser:
1001
1024
 
1002
- 1. **Same network?** — Make sure your device is on the same WiFi or LAN as Taskmaster
1025
+ 1. **Same subnet?** — Your phone/laptop and Taskmaster must be on the **same network subnet**. The `.local` address uses mDNS, which only works between devices on the same subnet. Common pitfall: the Pi is plugged into Ethernet while your phone is on WiFi, and your router puts them on different subnets (e.g. `192.168.88.x` vs `192.168.10.x`). Fix: connect the Pi to WiFi instead, or ensure both are on the same network. See "WiFi (Raspberry Pi)" above
1003
1026
  2. **Check the URL** — go to **http://taskmaster.local:18789** (the browser will redirect to HTTPS automatically). If you see a certificate warning, see "Secure Connection (HTTPS)" above
1004
1027
  3. **Wait for boot** — after powering on the device, it takes 2–3 minutes for everything to start. If you just plugged it in, give it a moment
1005
1028
  4. **Try a different browser** — some browsers (especially on older devices) have trouble with `.local` addresses. Try Chrome or Safari
1006
- 5. **Use the IP address** — if `.local` doesn't resolve, find the device's IP address on your router and go to `http://<ip-address>:18789` instead
1029
+ 5. **Use the IP address** — if `.local` doesn't resolve, find the device's IP address on your router's admin page and go to `http://<ip-address>:18789` instead
1007
1030
 
1008
1031
  ### Messages not getting through?
1009
1032
 
@@ -1435,6 +1458,28 @@ A chat button appears in the bottom-right corner of the page. Clicking it opens
1435
1458
 
1436
1459
  You can optionally set colours to match your website: `color` controls the floating chat button, and `bgColor` controls the chat overlay background. If you've set up branding on the Setup page, the widget uses your brand colours automatically — these init options override them if provided.
1437
1460
 
1461
+ > **Tip:** On the Setup page, the **Public Chat** status card has a **Widget Code** button that generates the embed snippet for you — just copy and paste it into your website.
1462
+
1463
+ ### Visitor Verification
1464
+
1465
+ By default, anyone who opens the public chat can start a conversation immediately (anonymous mode). If you want to verify visitors before they chat — for example, to collect contact details or reduce spam — you can enable identity verification.
1466
+
1467
+ 1. Go to the **Setup** page
1468
+ 2. Find the **Public Chat** status card
1469
+ 3. Click the settings icon to open the verification settings modal
1470
+ 4. Choose a verification method:
1471
+
1472
+ | Method | How it works | What you need |
1473
+ |--------|-------------|---------------|
1474
+ | **Anonymous** | No verification — visitors chat immediately | Nothing (default) |
1475
+ | **Email OTP** | Visitors enter their email, receive a one-time code | A [SendGrid](https://sendgrid.com) API key and a verified sender (free tier available). The sender address is configured in SendGrid, not in Taskmaster. |
1476
+ | **SMS OTP** | Visitors enter their phone number, receive a one-time code | [Twilio](https://twilio.com) account SID, auth token, and a Twilio phone number |
1477
+
1478
+ 5. Enter your provider credentials — for email, add the SendGrid API key in the **API Keys** section on the Setup page; for SMS, enter Twilio credentials in the SMS Fallback fields
1479
+ 6. Settings auto-save when you leave each field
1480
+
1481
+ Once enabled, visitors must authenticate before they can send their first message. Verified contact details are stored and available to the agent via the `verify_contact` tool, so your assistant knows who it's talking to.
1482
+
1438
1483
  ---
1439
1484
 
1440
1485
  ## Chat Commands