thepopebot 1.2.76-beta.14 → 1.2.76-beta.15

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": "thepopebot",
3
- "version": "1.2.76-beta.14",
3
+ "version": "1.2.76-beta.15",
4
4
  "type": "module",
5
5
  "description": "Create autonomous AI agents with a two-layer architecture: Next.js Event Handler + Docker Agent.",
6
6
  "bin": {
@@ -26,7 +26,9 @@ There are three action types:
26
26
  }
27
27
  ```
28
28
 
29
- Optional: add `"llm_provider"` and `"llm_model"` to override the default LLM for that job.
29
+ Optional fields:
30
+ - `"scope"` (e.g. `"agents/my-agent"`) — routes the cron to a scoped agent. Its `SYSTEM.md`, skills directory, and working directory all switch to that subdirectory. See `agents/CLAUDE.md` for the full pattern.
31
+ - `"llm_provider"` and `"llm_model"` — override the default LLM for that job.
30
32
 
31
33
  **`command`** — Runs a shell command on the event handler (working directory: project root).
32
34
 
@@ -7,11 +7,9 @@ You are an autonomous AI agent running inside a Docker container on thepopebot.
7
7
  Your workspace is `/home/coding-agent/workspace` — a live git repository.
8
8
 
9
9
  ## Temporary Files
10
- Use `/home/coding-agent/workspace/.tmp/` for working files — downloads, screenshots, intermediate data, scripts, generated files. `/home/coding-agent/workspace/.tmp/` is gitignored and nothing there gets committed. If a tool downloads a file, save it to `/home/coding-agent/workspace/.tmp/` and reference it directly.
10
+ Use `/tmp` for working files — downloads, screenshots, intermediate data, scripts, generated files. If a tool downloads a file, save it to `/tmp` and reference it directly.
11
11
 
12
- **DO NOT USE** `/tmp` because that will leak and waste disk space from writing extra layers to the container.
13
-
14
- Everything in the workspace is automatically committed and pushed when your job finishes. You do not control this. Be intentional about what you put here — **any file you create, move, or download into the workspace WILL be committed.**
12
+ Everything in the workspace `/home/coding-agent/workspace` is automatically committed and pushed when your job finishes. You do not control this. Be intentional about what you put here — **any file you create, move, or download into the workspace WILL be committed.**
15
13
 
16
14
  ## Directory Layout
17
15
 
@@ -12,6 +12,8 @@ agents/
12
12
 
13
13
  `SYSTEM.md` is the agent's system prompt. Write it in markdown addressed to the agent (e.g. "You are a code reviewer...").
14
14
 
15
+ > **Important:** `agents/<name>/SYSTEM.md` **replaces** `agent-job/SYSTEM.md` when the agent is scoped — it doesn't extend it. Use `agent-job/SYSTEM.md` as a starting template and adapt it: keep the runtime environment notes, the `/tmp` scratch directive, and add the `{{skills}}` token if you want skill descriptions injected. Then add the agent's identity-specific instructions on top.
16
+
15
17
  For agents with multiple complex tasks, add a `jobs/` subfolder:
16
18
 
17
19
  ```
@@ -25,29 +27,22 @@ agents/
25
27
 
26
28
  ## Scheduling
27
29
 
28
- Add a cron entry in `agent-job/CRONS.json`:
30
+ Add a cron entry in `agent-job/CRONS.json` with a `scope` field pointing at the agent:
29
31
 
30
32
  ```json
31
33
  {
32
- "name": "my-agent-daily",
33
- "schedule": "0 9 * * *",
34
+ "name": "my-agent-weekly-report",
35
+ "schedule": "0 9 * * 1",
34
36
  "type": "agent",
35
- "job": "Read agents/my-agent/SYSTEM.md and follow the instructions there.",
37
+ "scope": "agents/my-agent",
38
+ "job": "Follow the instructions in jobs/weekly-report.md",
36
39
  "enabled": true
37
40
  }
38
41
  ```
39
42
 
40
- For job-specific prompts, chain the reads:
43
+ `scope` activates the agent's identity (`SYSTEM.md`), skills, and working directory — the cron runs as the scoped agent, not from the repo root. `job` is the task prompt the agent receives.
41
44
 
42
- ```json
43
- {
44
- "name": "my-agent-report",
45
- "schedule": "0 9 * * 1",
46
- "type": "agent",
47
- "job": "Read agents/my-agent/SYSTEM.md for context, then read agents/my-agent/prompts/weekly-report.md and complete that task.",
48
- "enabled": true
49
- }
50
- ```
45
+ For reusable tasks, write the prompt as markdown in `agents/<name>/jobs/<task>.md` and reference it from `job` — the agent's working directory is the scoped folder, so the relative path resolves. For one-off tasks, write the prompt inline.
51
46
 
52
47
  ## Removing an Agent
53
48