patchwork-os 1.2.0-beta.2.canary.709 → 1.2.0-beta.2.canary.711

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "patchwork-os",
3
- "version": "1.2.0-beta.2.canary.709",
3
+ "version": "1.2.0-beta.2.canary.711",
4
4
  "description": "Your personal AI runtime, local-first. Patchwork OS gives any AI model a consistent set of tools, YAML recipes, a delegation policy with approval queue, and a durable trace memory — all on your machine, all under your policy.",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -1,5 +1,12 @@
1
1
  name: ambient-journal
2
2
  description: Append a timestamped line to your daily journal whenever a git commit lands.
3
+ # Writes this recipe performs, acknowledged up front. Enforced only when
4
+ # PATCHWORK_FLAG_ENFORCE_ALLOWWRITES is set, which is off by default — but a
5
+ # template that omits it breaks at its write step the moment an operator turns
6
+ # that hardening flag on, which is a reasonable thing for them to do.
7
+ allowWrites:
8
+ - file.append
9
+
3
10
  trigger:
4
11
  type: git_hook
5
12
  # The key is `event`, not `on` (#1464-family). The parser requires
@@ -46,6 +46,13 @@ description: |
46
46
  no need to find a real session.
47
47
  - Use the "Low (0)" filter to hit the empty-state branch deterministically
48
48
  (without rejecting cards mid-test).
49
+ # Writes this recipe performs, acknowledged up front. Enforced only when
50
+ # PATCHWORK_FLAG_ENFORCE_ALLOWWRITES is set, which is off by default — but a
51
+ # template that omits it breaks at its write step the moment an operator turns
52
+ # that hardening flag on, which is a reasonable thing for them to do.
53
+ allowWrites:
54
+ - file.write
55
+
49
56
  trigger:
50
57
  type: manual
51
58
  vars:
@@ -9,6 +9,13 @@ description: |
9
9
  so the agent subprocess has MCP access. Running via `patchwork recipe run`
10
10
  (local yamlRunner) will fail at Step 1 — the local claude -p subprocess has
11
11
  no bridge MCP context. Trigger from the dashboard Recipes page instead.
12
+ # Writes this recipe performs, acknowledged up front. Enforced only when
13
+ # PATCHWORK_FLAG_ENFORCE_ALLOWWRITES is set, which is off by default — but a
14
+ # template that omits it breaks at its write step the moment an operator turns
15
+ # that hardening flag on, which is a reasonable thing for them to do.
16
+ allowWrites:
17
+ - file.write
18
+
12
19
  trigger:
13
20
  type: manual
14
21
  steps:
@@ -1,5 +1,12 @@
1
1
  name: daily-status
2
2
  description: Every morning at 08:00, summarize yesterday's commits + today's calendar hints from local files.
3
+ # Writes this recipe performs, acknowledged up front. Enforced only when
4
+ # PATCHWORK_FLAG_ENFORCE_ALLOWWRITES is set, which is off by default — but a
5
+ # template that omits it breaks at its write step the moment an operator turns
6
+ # that hardening flag on, which is a reasonable thing for them to do.
7
+ allowWrites:
8
+ - file.write
9
+
3
10
  trigger:
4
11
  type: cron
5
12
  at: "0 8 * * *"
@@ -8,6 +8,13 @@ description: |
8
8
  Requires: bridge running with --driver subprocess so the agent subprocess has
9
9
  MCP access to getBufferContent, goToDefinition, getHover, getDiagnostics, editText.
10
10
 
11
+ # Writes this recipe performs, acknowledged up front. Enforced only when
12
+ # PATCHWORK_FLAG_ENFORCE_ALLOWWRITES is set, which is off by default — but a
13
+ # template that omits it breaks at its write step the moment an operator turns
14
+ # that hardening flag on, which is a reasonable thing for them to do.
15
+ allowWrites:
16
+ - file.append
17
+
11
18
  trigger:
12
19
  type: on_file_save
13
20
  glob: "**/*.{ts,tsx}"
@@ -1,5 +1,12 @@
1
1
  name: gmail-health-check
2
2
  description: Verify Gmail connector is working and report inbox stats.
3
+ # Writes this recipe performs, acknowledged up front. Enforced only when
4
+ # PATCHWORK_FLAG_ENFORCE_ALLOWWRITES is set, which is off by default — but a
5
+ # template that omits it breaks at its write step the moment an operator turns
6
+ # that hardening flag on, which is a reasonable thing for them to do.
7
+ allowWrites:
8
+ - file.write
9
+
3
10
  trigger:
4
11
  type: manual
5
12
  steps:
@@ -1,5 +1,12 @@
1
1
  name: inbox-triage
2
2
  description: Fetch unread emails from last 24h and write a prioritised triage summary.
3
+ # Writes this recipe performs, acknowledged up front. Enforced only when
4
+ # PATCHWORK_FLAG_ENFORCE_ALLOWWRITES is set, which is off by default — but a
5
+ # template that omits it breaks at its write step the moment an operator turns
6
+ # that hardening flag on, which is a reasonable thing for them to do.
7
+ allowWrites:
8
+ - file.write
9
+
3
10
  trigger:
4
11
  type: cron
5
12
  at: "0 8 * * 1-5"
@@ -46,6 +46,13 @@ description: |
46
46
  path: /hooks/incident-to-pr
47
47
  and reference {{payload.title}} / {{payload.body}} in place of the vars.
48
48
 
49
+ # Writes this recipe performs, acknowledged up front. Enforced only when
50
+ # PATCHWORK_FLAG_ENFORCE_ALLOWWRITES is set, which is off by default — but a
51
+ # template that omits it breaks at its write step the moment an operator turns
52
+ # that hardening flag on, which is a reasonable thing for them to do.
53
+ allowWrites:
54
+ - slack.post_message
55
+
49
56
  trigger:
50
57
  type: manual
51
58
  vars:
@@ -1,5 +1,12 @@
1
1
  name: lint-on-save
2
2
  description: On every save of a .ts/.tsx file, surface new diagnostics to the inbox.
3
+ # Writes this recipe performs, acknowledged up front. Enforced only when
4
+ # PATCHWORK_FLAG_ENFORCE_ALLOWWRITES is set, which is off by default — but a
5
+ # template that omits it breaks at its write step the moment an operator turns
6
+ # that hardening flag on, which is a reasonable thing for them to do.
7
+ allowWrites:
8
+ - file.append
9
+
3
10
  trigger:
4
11
  type: on_file_save
5
12
  glob: "**/*.{ts,tsx}"
@@ -1,5 +1,13 @@
1
1
  name: morning-brief-slack
2
2
  description: Daily morning brief combining calendar, GitHub PRs, and Linear issues — posted to Slack.
3
+ # Writes this recipe performs, acknowledged up front. Enforced only when
4
+ # PATCHWORK_FLAG_ENFORCE_ALLOWWRITES is set, which is off by default — but a
5
+ # template that omits it breaks at its write step the moment an operator turns
6
+ # that hardening flag on, which is a reasonable thing for them to do.
7
+ allowWrites:
8
+ - file.write
9
+ - slack.post_message
10
+
3
11
  trigger:
4
12
  type: cron
5
13
  at: "0 8 * * 1-5"
@@ -1,5 +1,12 @@
1
1
  name: morning-brief
2
2
  description: Daily morning brief combining unread emails, calendar, recent git activity, and open GitHub issues.
3
+ # Writes this recipe performs, acknowledged up front. Enforced only when
4
+ # PATCHWORK_FLAG_ENFORCE_ALLOWWRITES is set, which is off by default — but a
5
+ # template that omits it breaks at its write step the moment an operator turns
6
+ # that hardening flag on, which is a reasonable thing for them to do.
7
+ allowWrites:
8
+ - file.write
9
+
3
10
  trigger:
4
11
  type: cron
5
12
  at: "0 8 * * 1-5"
@@ -18,6 +18,13 @@
18
18
  apiVersion: patchwork.sh/v1
19
19
  name: outcome-ingester
20
20
  description: Poll GitHub for Test Guardian issues and record outcome dispositions to the trust-replay store.
21
+ # Writes this recipe performs, acknowledged up front. Enforced only when
22
+ # PATCHWORK_FLAG_ENFORCE_ALLOWWRITES is set, which is off by default — but a
23
+ # template that omits it breaks at its write step the moment an operator turns
24
+ # that hardening flag on, which is a reasonable thing for them to do.
25
+ allowWrites:
26
+ - outcomes.classify_issues
27
+
21
28
  trigger:
22
29
  type: cron
23
30
  at: "0 */6 * * *"
@@ -2,6 +2,13 @@
2
2
  apiVersion: patchwork.sh/v1
3
3
  name: project-health-check
4
4
  description: Fetch git activity, open issues, and diagnostics in parallel, then write a health summary.
5
+ # Writes this recipe performs, acknowledged up front. Enforced only when
6
+ # PATCHWORK_FLAG_ENFORCE_ALLOWWRITES is set, which is off by default — but a
7
+ # template that omits it breaks at its write step the moment an operator turns
8
+ # that hardening flag on, which is a reasonable thing for them to do.
9
+ allowWrites:
10
+ - file.write
11
+
5
12
  trigger:
6
13
  type: manual
7
14
  maxConcurrency: 4
@@ -15,6 +15,13 @@ description: |
15
15
  # path: /hooks/sentry-to-linear
16
16
  # Then POST from a Sentry alert rule to https://<bridge-url>/hooks/sentry-to-linear
17
17
 
18
+ # Writes this recipe performs, acknowledged up front. Enforced only when
19
+ # PATCHWORK_FLAG_ENFORCE_ALLOWWRITES is set, which is off by default — but a
20
+ # template that omits it breaks at its write step the moment an operator turns
21
+ # that hardening flag on, which is a reasonable thing for them to do.
22
+ allowWrites:
23
+ - file.write
24
+
18
25
  trigger:
19
26
  type: manual
20
27
  vars:
@@ -1,5 +1,12 @@
1
1
  name: stale-branches
2
2
  description: Weekly sweep — list local branches with no commits in 30+ days.
3
+ # Writes this recipe performs, acknowledged up front. Enforced only when
4
+ # PATCHWORK_FLAG_ENFORCE_ALLOWWRITES is set, which is off by default — but a
5
+ # template that omits it breaks at its write step the moment an operator turns
6
+ # that hardening flag on, which is a reasonable thing for them to do.
7
+ allowWrites:
8
+ - file.write
9
+
3
10
  trigger:
4
11
  type: cron
5
12
  at: "0 9 * * MON"
@@ -1,5 +1,12 @@
1
1
  name: watch-failing-tests
2
2
  description: When tests fail, drop a one-paragraph explanation into the inbox.
3
+ # Writes this recipe performs, acknowledged up front. Enforced only when
4
+ # PATCHWORK_FLAG_ENFORCE_ALLOWWRITES is set, which is off by default — but a
5
+ # template that omits it breaks at its write step the moment an operator turns
6
+ # that hardening flag on, which is a reasonable thing for them to do.
7
+ allowWrites:
8
+ - file.append
9
+
3
10
  trigger:
4
11
  type: on_test_run
5
12
  filter: failure
@@ -42,6 +42,14 @@ description: |
42
42
  -H 'Content-Type: application/json' \
43
43
  -d '{"sleep_hours":7.4,"sleep_quality":"restful","move_percent":112,"move_calories":645,"exercise_percent":150,"exercise_min":45,"stand_percent":100,"notes":"Closed all three rings."}'
44
44
 
45
+ # Writes this recipe performs, acknowledged up front. Enforced only when
46
+ # PATCHWORK_FLAG_ENFORCE_ALLOWWRITES is set, which is off by default — but a
47
+ # template that omits it breaks at its write step the moment an operator turns
48
+ # that hardening flag on, which is a reasonable thing for them to do.
49
+ allowWrites:
50
+ - file.append
51
+ - http.post
52
+
45
53
  trigger:
46
54
  type: webhook
47
55
  path: /apple-watch-health
@@ -13,6 +13,13 @@ description: |
13
13
  -H 'Content-Type: application/json' \
14
14
  -d '{"text":"the auth refresh path needs a circuit breaker"}'
15
15
 
16
+ # Writes this recipe performs, acknowledged up front. Enforced only when
17
+ # PATCHWORK_FLAG_ENFORCE_ALLOWWRITES is set, which is off by default — but a
18
+ # template that omits it breaks at its write step the moment an operator turns
19
+ # that hardening flag on, which is a reasonable thing for them to do.
20
+ allowWrites:
21
+ - file.append
22
+
16
23
  trigger:
17
24
  type: webhook
18
25
  path: /capture-thought
@@ -20,6 +20,13 @@ description: |
20
20
  -H 'Content-Type: application/json' \
21
21
  -d '{"customer_email":"jane@bigco.com","ticket_url":"https://app.intercom.com/conversations/9876","summary":"Says checkout has been broken for 3 days"}'
22
22
 
23
+ # Writes this recipe performs, acknowledged up front. Enforced only when
24
+ # PATCHWORK_FLAG_ENFORCE_ALLOWWRITES is set, which is off by default — but a
25
+ # template that omits it breaks at its write step the moment an operator turns
26
+ # that hardening flag on, which is a reasonable thing for them to do.
27
+ allowWrites:
28
+ - slack.post_message
29
+
23
30
  trigger:
24
31
  type: webhook
25
32
  path: /customer-escalation
@@ -23,6 +23,13 @@ description: |
23
23
  -H 'Content-Type: application/json' \
24
24
  -d '{"title":"checkout p99 over 2s","severity":"high","source":"datadog","url":"https://app.datadoghq.com/monitor/123"}'
25
25
 
26
+ # Writes this recipe performs, acknowledged up front. Enforced only when
27
+ # PATCHWORK_FLAG_ENFORCE_ALLOWWRITES is set, which is off by default — but a
28
+ # template that omits it breaks at its write step the moment an operator turns
29
+ # that hardening flag on, which is a reasonable thing for them to do.
30
+ allowWrites:
31
+ - slack.post_message
32
+
26
33
  trigger:
27
34
  type: webhook
28
35
  path: /incident-intake
@@ -14,6 +14,13 @@ description: |
14
14
  -H 'Content-Type: application/json' \
15
15
  -d '{"attendees":["alex@example.com","sam@example.com"],"topic":"Q3 planning"}'
16
16
 
17
+ # Writes this recipe performs, acknowledged up front. Enforced only when
18
+ # PATCHWORK_FLAG_ENFORCE_ALLOWWRITES is set, which is off by default — but a
19
+ # template that omits it breaks at its write step the moment an operator turns
20
+ # that hardening flag on, which is a reasonable thing for them to do.
21
+ allowWrites:
22
+ - file.write
23
+
17
24
  trigger:
18
25
  type: webhook
19
26
  path: /meeting-prep
@@ -15,6 +15,13 @@ description: |
15
15
  Example request:
16
16
  curl -X POST http://localhost:3101/hooks/morning-brief
17
17
 
18
+ # Writes this recipe performs, acknowledged up front. Enforced only when
19
+ # PATCHWORK_FLAG_ENFORCE_ALLOWWRITES is set, which is off by default — but a
20
+ # template that omits it breaks at its write step the moment an operator turns
21
+ # that hardening flag on, which is a reasonable thing for them to do.
22
+ allowWrites:
23
+ - file.write
24
+
18
25
  trigger:
19
26
  type: webhook
20
27
  path: /morning-brief