openvibers/openvibe.contracts Commits
actor.agent-manage-request/result@1: quiet hours (quiet_from, quiet_to: no scheduled run starts inside them) (0.214.0) (#213)
Changes
@@@ -6,6 +6,10 @@ the notes were in the tag and commit messages (`git tag -n1`).## 0.214.0 — 2026-10-26++- **Quiet hours for personal agents** (consumer plan step 4: "recurring work … with quiet hours and a budget").++ `actor.agent-manage-request@1` and `-result@1` carry `quiet_from` / `quiet_to` (HH:MM UTC, both or neither; the window++ may cross midnight): no scheduled run starts inside it, an hourly run waits until it ends, and a run the owner starts++ still runs. Fixtures for both.- **A private desk for agents on a person's own machine** (plan track K, consumer plan step 2: Vibe's desk on Node).`bot.command@1` takes kind `desk` (`action`: start | stop | status; `width`, `height` on start): a display of its ownon the machine (Xvfb, a window manager, its own session and browser profile) where an agent works without touching@@@ -2,7 +2,7 @@"$schema": "https://json-schema.org/draft/2020-12/schema","$id": "https://openvibe.network/contracts/actor/agent-manage-request.v1.json","title": "ActorAgentManageRequest",-- "description": "actor.agent-manage-request@1: bodies of actor.agent.manage on OpenVibe.Actor. POST /api/v1/me/agents { name, instructions, mode?, budget_per_run_usd?, daily_runs_max?, schedule?, schedule_at?, schedule_dow?, status? } creates a personal agent (10 per person: 429 actor.agent.limit); PATCH /api/v1/me/agents/:id takes any subset. POST /api/v1/me/agents/:id/memory { text } adds a note (1–1000 characters; 50 notes, the oldest agent-written note goes first, a person's note never automatically) and PATCH /api/v1/me/agents/:id/memory/:mem { text } edits one. Unknown fields are 422 actor.agent.invalid; another person's agent is 404 actor.agent.not_found.",++ "description": "actor.agent-manage-request@1: bodies of actor.agent.manage on OpenVibe.Actor. POST /api/v1/me/agents { name, instructions, mode?, budget_per_run_usd?, daily_runs_max?, schedule?, schedule_at?, schedule_dow?, quiet_from?, quiet_to?, status? } creates a personal agent (10 per person: 429 actor.agent.limit); PATCH /api/v1/me/agents/:id takes any subset. POST /api/v1/me/agents/:id/memory { text } adds a note (1–1000 characters; 50 notes, the oldest agent-written note goes first, a person's note never automatically) and PATCH /api/v1/me/agents/:id/memory/:mem { text } edits one. Unknown fields are 422 actor.agent.invalid; another person's agent is 404 actor.agent.not_found.","anyOf": [{"type": "object",@@@ -62,6 +62,22 @@"maximum": 6,"description": "0 is Sunday; for weekly."},++ "quiet_from": {++ "type": [++ "string",++ "null"++ ],++ "pattern": "^([01][0-9]|2[0-3]):[0-5][0-9]$",++ "description": "HH:MM UTC: quiet hours start. No scheduled run starts from quiet_from to quiet_to (the window may cross midnight; an hourly run waits until it ends); a run its owner starts still runs. Both or neither."++ },++ "quiet_to": {++ "type": [++ "string",++ "null"++ ],++ "pattern": "^([01][0-9]|2[0-3]):[0-5][0-9]$",++ "description": "HH:MM UTC: quiet hours end."++ },"status": {"enum": ["active",@@@ -84,6 +84,22 @@"maximum": 6,"description": "0 is Sunday; for weekly."},++ "quiet_from": {++ "type": [++ "string",++ "null"++ ],++ "pattern": "^([01][0-9]|2[0-3]):[0-5][0-9]$",++ "description": "HH:MM UTC: quiet hours start. No scheduled run starts from quiet_from to quiet_to (the window may cross midnight; an hourly run waits until it ends); a run its owner starts still runs. Both or neither."++ },++ "quiet_to": {++ "type": [++ "string",++ "null"++ ],++ "pattern": "^([01][0-9]|2[0-3]):[0-5][0-9]$",++ "description": "HH:MM UTC: quiet hours end."++ },"status": {"enum": ["active",@@@ -235,6 +251,22 @@"maximum": 6,"description": "0 is Sunday; for weekly."},++ "quiet_from": {++ "type": [++ "string",++ "null"++ ],++ "pattern": "^([01][0-9]|2[0-3]):[0-5][0-9]$",++ "description": "HH:MM UTC: quiet hours start. No scheduled run starts from quiet_from to quiet_to (the window may cross midnight; an hourly run waits until it ends); a run its owner starts still runs. Both or neither."++ },++ "quiet_to": {++ "type": [++ "string",++ "null"++ ],++ "pattern": "^([01][0-9]|2[0-3]):[0-5][0-9]$",++ "description": "HH:MM UTC: quiet hours end."++ },"status": {"enum": ["active",nnew file mode 100644@@@ -0,0 +1,6 @@++{++ "name": "x",++ "instructions": "y",++ "quiet_from": "25:00",++ "quiet_to": "07:00"++}nnew file mode 100644@@@ -0,0 +1,7 @@++{++ "name": "Hourly checker",++ "instructions": "Check the status page and tell me what changed.",++ "schedule": "hourly",++ "quiet_from": "22:00",++ "quiet_to": "07:00"++}@@@ -76725,7 +76725,7 @@"$schema": "https://json-schema.org/draft/2020-12/schema","$id": "https://openvibe.network/contracts/actor/agent-manage-request.v1.json","title": "ActorAgentManageRequest",-- "description": "actor.agent-manage-request@1: bodies of actor.agent.manage on OpenVibe.Actor. POST /api/v1/me/agents { name, instructions, mode?, budget_per_run_usd?, daily_runs_max?, schedule?, schedule_at?, schedule_dow?, status? } creates a personal agent (10 per person: 429 actor.agent.limit); PATCH /api/v1/me/agents/:id takes any subset. POST /api/v1/me/agents/:id/memory { text } adds a note (1–1000 characters; 50 notes, the oldest agent-written note goes first, a person's note never automatically) and PATCH /api/v1/me/agents/:id/memory/:mem { text } edits one. Unknown fields are 422 actor.agent.invalid; another person's agent is 404 actor.agent.not_found.",++ "description": "actor.agent-manage-request@1: bodies of actor.agent.manage on OpenVibe.Actor. POST /api/v1/me/agents { name, instructions, mode?, budget_per_run_usd?, daily_runs_max?, schedule?, schedule_at?, schedule_dow?, quiet_from?, quiet_to?, status? } creates a personal agent (10 per person: 429 actor.agent.limit); PATCH /api/v1/me/agents/:id takes any subset. POST /api/v1/me/agents/:id/memory { text } adds a note (1–1000 characters; 50 notes, the oldest agent-written note goes first, a person's note never automatically) and PATCH /api/v1/me/agents/:id/memory/:mem { text } edits one. Unknown fields are 422 actor.agent.invalid; another person's agent is 404 actor.agent.not_found.","anyOf": [{"type": "object",@@@ -76785,6 +76785,22 @@"maximum": 6,"description": "0 is Sunday; for weekly."},++ "quiet_from": {++ "type": [++ "string",++ "null"++ ],++ "pattern": "^([01][0-9]|2[0-3]):[0-5][0-9]$",++ "description": "HH:MM UTC: quiet hours start. No scheduled run starts from quiet_from to quiet_to (the window may cross midnight; an hourly run waits until it ends); a run its owner starts still runs. Both or neither."++ },++ "quiet_to": {++ "type": [++ "string",++ "null"++ ],++ "pattern": "^([01][0-9]|2[0-3]):[0-5][0-9]$",++ "description": "HH:MM UTC: quiet hours end."++ },"status": {"enum": ["active",@@@ -76900,6 +76916,22 @@"maximum": 6,"description": "0 is Sunday; for weekly."},++ "quiet_from": {++ "type": [++ "string",++ "null"++ ],++ "pattern": "^([01][0-9]|2[0-3]):[0-5][0-9]$",++ "description": "HH:MM UTC: quiet hours start. No scheduled run starts from quiet_from to quiet_to (the window may cross midnight; an hourly run waits until it ends); a run its owner starts still runs. Both or neither."++ },++ "quiet_to": {++ "type": [++ "string",++ "null"++ ],++ "pattern": "^([01][0-9]|2[0-3]):[0-5][0-9]$",++ "description": "HH:MM UTC: quiet hours end."++ },"status": {"enum": ["active",@@@ -77051,6 +77083,22 @@"maximum": 6,"description": "0 is Sunday; for weekly."},++ "quiet_from": {++ "type": [++ "string",++ "null"++ ],++ "pattern": "^([01][0-9]|2[0-3]):[0-5][0-9]$",++ "description": "HH:MM UTC: quiet hours start. No scheduled run starts from quiet_from to quiet_to (the window may cross midnight; an hourly run waits until it ends); a run its owner starts still runs. Both or neither."++ },++ "quiet_to": {++ "type": [++ "string",++ "null"++ ],++ "pattern": "^([01][0-9]|2[0-3]):[0-5][0-9]$",++ "description": "HH:MM UTC: quiet hours end."++ },"status": {"enum": ["active",@@@ -1406,7 +1406,7 @@},"actor.agent-manage-request.v1": {"title": "ActorAgentManageRequest",-- "description": "actor.agent-manage-request@1: bodies of actor.agent.manage on OpenVibe.Actor. POST /api/v1/me/agents { name, instructions, mode?, budget_per_run_usd?, daily_runs_max?, schedule?, schedule_at?, schedule_dow?, status? } creates a personal agent (10 per person: 429 actor.agent.limit); PATCH /api/v1/me/agents/:id takes any subset. POST /api/v1/me/agents/:id/memory { text } adds a note (1–1000 characters; 50 notes, the oldest agent-written note goes first, a person's note never automatically) and PATCH /api/v1/me/agents/:id/memory/:mem { text } edits one. Unknown fields are 422 actor.agent.invalid; another person's agent is 404 actor.agent.not_found.",++ "description": "actor.agent-manage-request@1: bodies of actor.agent.manage on OpenVibe.Actor. POST /api/v1/me/agents { name, instructions, mode?, budget_per_run_usd?, daily_runs_max?, schedule?, schedule_at?, schedule_dow?, quiet_from?, quiet_to?, status? } creates a personal agent (10 per person: 429 actor.agent.limit); PATCH /api/v1/me/agents/:id takes any subset. POST /api/v1/me/agents/:id/memory { text } adds a note (1–1000 characters; 50 notes, the oldest agent-written note goes first, a person's note never automatically) and PATCH /api/v1/me/agents/:id/memory/:mem { text } edits one. Unknown fields are 422 actor.agent.invalid; another person's agent is 404 actor.agent.not_found.","anyOf": [{"type": "object",@@@ -1466,6 +1466,22 @@"maximum": 6,"description": "0 is Sunday; for weekly."},++ "quiet_from": {++ "type": [++ "string",++ "null"++ ],++ "pattern": "^([01][0-9]|2[0-3]):[0-5][0-9]$",++ "description": "HH:MM UTC: quiet hours start. No scheduled run starts from quiet_from to quiet_to (the window may cross midnight; an hourly run waits until it ends); a run its owner starts still runs. Both or neither."++ },++ "quiet_to": {++ "type": [++ "string",++ "null"++ ],++ "pattern": "^([01][0-9]|2[0-3]):[0-5][0-9]$",++ "description": "HH:MM UTC: quiet hours end."++ },"status": {"enum": ["active",@@@ -1574,6 +1590,22 @@"maximum": 6,"description": "0 is Sunday; for weekly."},++ "quiet_from": {++ "type": [++ "string",++ "null"++ ],++ "pattern": "^([01][0-9]|2[0-3]):[0-5][0-9]$",++ "description": "HH:MM UTC: quiet hours start. No scheduled run starts from quiet_from to quiet_to (the window may cross midnight; an hourly run waits until it ends); a run its owner starts still runs. Both or neither."++ },++ "quiet_to": {++ "type": [++ "string",++ "null"++ ],++ "pattern": "^([01][0-9]|2[0-3]):[0-5][0-9]$",++ "description": "HH:MM UTC: quiet hours end."++ },"status": {"enum": ["active",@@@ -1725,6 +1757,22 @@"maximum": 6,"description": "0 is Sunday; for weekly."},++ "quiet_from": {++ "type": [++ "string",++ "null"++ ],++ "pattern": "^([01][0-9]|2[0-3]):[0-5][0-9]$",++ "description": "HH:MM UTC: quiet hours start. No scheduled run starts from quiet_from to quiet_to (the window may cross midnight; an hourly run waits until it ends); a run its owner starts still runs. Both or neither."++ },++ "quiet_to": {++ "type": [++ "string",++ "null"++ ],++ "pattern": "^([01][0-9]|2[0-3]):[0-5][0-9]$",++ "description": "HH:MM UTC: quiet hours end."++ },"status": {"enum": ["active",@@@ -200335,7 +200335,7 @@ export interface ActorTaskCreateRequest {/** [email protected] (owner: actor) *//**-- * actor.agent-manage-request@1: bodies of actor.agent.manage on OpenVibe.Actor. POST /api/v1/me/agents { name, instructions, mode?, budget_per_run_usd?, daily_runs_max?, schedule?, schedule_at?, schedule_dow?, status? } creates a personal agent (10 per person: 429 actor.agent.limit); PATCH /api/v1/me/agents/:id takes any subset. POST /api/v1/me/agents/:id/memory { text } adds a note (1–1000 characters; 50 notes, the oldest agent-written note goes first, a person's note never automatically) and PATCH /api/v1/me/agents/:id/memory/:mem { text } edits one. Unknown fields are 422 actor.agent.invalid; another person's agent is 404 actor.agent.not_found.++ * actor.agent-manage-request@1: bodies of actor.agent.manage on OpenVibe.Actor. POST /api/v1/me/agents { name, instructions, mode?, budget_per_run_usd?, daily_runs_max?, schedule?, schedule_at?, schedule_dow?, quiet_from?, quiet_to?, status? } creates a personal agent (10 per person: 429 actor.agent.limit); PATCH /api/v1/me/agents/:id takes any subset. POST /api/v1/me/agents/:id/memory { text } adds a note (1–1000 characters; 50 notes, the oldest agent-written note goes first, a person's note never automatically) and PATCH /api/v1/me/agents/:id/memory/:mem { text } edits one. Unknown fields are 422 actor.agent.invalid; another person's agent is 404 actor.agent.not_found.*/export type ActorAgentManageRequest =| {@@@ -200356,6 +200356,14 @@ export type ActorAgentManageRequest =* 0 is Sunday; for weekly.*/schedule_dow?: number | null;++ /**++ * HH:MM UTC: quiet hours start. No scheduled run starts from quiet_from to quiet_to (the window may cross midnight; an hourly run waits until it ends); a run its owner starts still runs. Both or neither.++ */++ quiet_from?: string | null;++ /**++ * HH:MM UTC: quiet hours end.++ */++ quiet_to?: string | null;status?: "active" | "paused";}| {@@@ -200388,6 +200396,14 @@ export type ActorAgentManageResult =* 0 is Sunday; for weekly.*/schedule_dow?: number | null;++ /**++ * HH:MM UTC: quiet hours start. No scheduled run starts from quiet_from to quiet_to (the window may cross midnight; an hourly run waits until it ends); a run its owner starts still runs. Both or neither.++ */++ quiet_from?: string | null;++ /**++ * HH:MM UTC: quiet hours end.++ */++ quiet_to?: string | null;status: "active" | "paused";next_run_at?: string | null;last_run_at?: string | null;@@@ -200426,6 +200442,14 @@ export type ActorAgentManageResult =* 0 is Sunday; for weekly.*/schedule_dow?: number | null;++ /**++ * HH:MM UTC: quiet hours start. No scheduled run starts from quiet_from to quiet_to (the window may cross midnight; an hourly run waits until it ends); a run its owner starts still runs. Both or neither.++ */++ quiet_from?: string | null;++ /**++ * HH:MM UTC: quiet hours end.++ */++ quiet_to?: string | null;status: "active" | "paused";next_run_at?: string | null;last_run_at?: string | null;
@@ -6,6 +6,10 @@ the notes were in the tag and commit messages (`git tag -n1`).
@@ -6,6 +6,10 @@ the notes were in the tag and commit messages (`git tag -n1`).
## 0.214.0 — 2026-10-26
## 0.214.0 — 2026-10-26
+- **Quiet hours for personal agents** (consumer plan step 4: "recurring work … with quiet hours and a budget").
+ `actor.agent-manage-request@1` and `-result@1` carry `quiet_from` / `quiet_to` (HH:MM UTC, both or neither; the window
+ may cross midnight): no scheduled run starts inside it, an hourly run waits until it ends, and a run the owner starts
+ still runs. Fixtures for both.
- **A private desk for agents on a person's own machine** (plan track K, consumer plan step 2: Vibe's desk on Node).
- **A private desk for agents on a person's own machine** (plan track K, consumer plan step 2: Vibe's desk on Node).
`bot.command@1` takes kind `desk` (`action`: start | stop | status; `width`, `height` on start): a display of its own
`bot.command@1` takes kind `desk` (`action`: start | stop | status; `width`, `height` on start): a display of its own
on the machine (Xvfb, a window manager, its own session and browser profile) where an agent works without touching
on the machine (Xvfb, a window manager, its own session and browser profile) where an agent works without touching
@@ -2,7 +2,7 @@
@@ -2,7 +2,7 @@
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://openvibe.network/contracts/actor/agent-manage-request.v1.json",
"$id": "https://openvibe.network/contracts/actor/agent-manage-request.v1.json",
"title": "ActorAgentManageRequest",
"title": "ActorAgentManageRequest",
- "description": "actor.agent-manage-request@1: bodies of actor.agent.manage on OpenVibe.Actor. POST /api/v1/me/agents { name, instructions, mode?, budget_per_run_usd?, daily_runs_max?, schedule?, schedule_at?, schedule_dow?, status? } creates a personal agent (10 per person: 429 actor.agent.limit); PATCH /api/v1/me/agents/:id takes any subset. POST /api/v1/me/agents/:id/memory { text } adds a note (1–1000 characters; 50 notes, the oldest agent-written note goes first, a person's note never automatically) and PATCH /api/v1/me/agents/:id/memory/:mem { text } edits one. Unknown fields are 422 actor.agent.invalid; another person's agent is 404 actor.agent.not_found.",
+ "description": "actor.agent-manage-request@1: bodies of actor.agent.manage on OpenVibe.Actor. POST /api/v1/me/agents { name, instructions, mode?, budget_per_run_usd?, daily_runs_max?, schedule?, schedule_at?, schedule_dow?, quiet_from?, quiet_to?, status? } creates a personal agent (10 per person: 429 actor.agent.limit); PATCH /api/v1/me/agents/:id takes any subset. POST /api/v1/me/agents/:id/memory { text } adds a note (1–1000 characters; 50 notes, the oldest agent-written note goes first, a person's note never automatically) and PATCH /api/v1/me/agents/:id/memory/:mem { text } edits one. Unknown fields are 422 actor.agent.invalid; another person's agent is 404 actor.agent.not_found.",
"anyOf": [
"anyOf": [
{
{
"type": "object",
"type": "object",
@@ -62,6 +62,22 @@
@@ -62,6 +62,22 @@
"maximum": 6,
"maximum": 6,
"description": "0 is Sunday; for weekly."
"description": "0 is Sunday; for weekly."
},
},
+ "quiet_from": {
+ "type": [
+ "string",
+ "null"
+ ],
+ "pattern": "^([01][0-9]|2[0-3]):[0-5][0-9]$",
+ "description": "HH:MM UTC: quiet hours start. No scheduled run starts from quiet_from to quiet_to (the window may cross midnight; an hourly run waits until it ends); a run its owner starts still runs. Both or neither."
+ },
+ "quiet_to": {
+ "type": [
+ "string",
+ "null"
+ ],
+ "pattern": "^([01][0-9]|2[0-3]):[0-5][0-9]$",
+ "description": "HH:MM UTC: quiet hours end."
+ },
"status": {
"status": {
"enum": [
"enum": [
"active",
"active",
@@ -84,6 +84,22 @@
@@ -84,6 +84,22 @@
"maximum": 6,
"maximum": 6,
"description": "0 is Sunday; for weekly."
"description": "0 is Sunday; for weekly."
},
},
+ "quiet_from": {
+ "type": [
+ "string",
+ "null"
+ ],
+ "pattern": "^([01][0-9]|2[0-3]):[0-5][0-9]$",
+ "description": "HH:MM UTC: quiet hours start. No scheduled run starts from quiet_from to quiet_to (the window may cross midnight; an hourly run waits until it ends); a run its owner starts still runs. Both or neither."
+ },
+ "quiet_to": {
+ "type": [
+ "string",
+ "null"
+ ],
+ "pattern": "^([01][0-9]|2[0-3]):[0-5][0-9]$",
+ "description": "HH:MM UTC: quiet hours end."
+ },
"status": {
"status": {
"enum": [
"enum": [
"active",
"active",
@@ -235,6 +251,22 @@
@@ -235,6 +251,22 @@
"maximum": 6,
"maximum": 6,
"description": "0 is Sunday; for weekly."
"description": "0 is Sunday; for weekly."
},
},
+ "quiet_from": {
+ "type": [
+ "string",
+ "null"
+ ],
+ "pattern": "^([01][0-9]|2[0-3]):[0-5][0-9]$",
+ "description": "HH:MM UTC: quiet hours start. No scheduled run starts from quiet_from to quiet_to (the window may cross midnight; an hourly run waits until it ends); a run its owner starts still runs. Both or neither."
+ },
+ "quiet_to": {
+ "type": [
+ "string",
+ "null"
+ ],
+ "pattern": "^([01][0-9]|2[0-3]):[0-5][0-9]$",
+ "description": "HH:MM UTC: quiet hours end."
+ },
"status": {
"status": {
"enum": [
"enum": [
"active",
"active",
new file mode 100644
new file mode 100644
@@ -0,0 +1,6 @@
@@ -0,0 +1,6 @@
+{
+ "name": "x",
+ "instructions": "y",
+ "quiet_from": "25:00",
+ "quiet_to": "07:00"
+}
new file mode 100644
new file mode 100644
@@ -0,0 +1,7 @@
@@ -0,0 +1,7 @@
+{
+ "name": "Hourly checker",
+ "instructions": "Check the status page and tell me what changed.",
+ "schedule": "hourly",
+ "quiet_from": "22:00",
+ "quiet_to": "07:00"
+}
@@ -76725,7 +76725,7 @@
@@ -76725,7 +76725,7 @@
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://openvibe.network/contracts/actor/agent-manage-request.v1.json",
"$id": "https://openvibe.network/contracts/actor/agent-manage-request.v1.json",
"title": "ActorAgentManageRequest",
"title": "ActorAgentManageRequest",
- "description": "actor.agent-manage-request@1: bodies of actor.agent.manage on OpenVibe.Actor. POST /api/v1/me/agents { name, instructions, mode?, budget_per_run_usd?, daily_runs_max?, schedule?, schedule_at?, schedule_dow?, status? } creates a personal agent (10 per person: 429 actor.agent.limit); PATCH /api/v1/me/agents/:id takes any subset. POST /api/v1/me/agents/:id/memory { text } adds a note (1–1000 characters; 50 notes, the oldest agent-written note goes first, a person's note never automatically) and PATCH /api/v1/me/agents/:id/memory/:mem { text } edits one. Unknown fields are 422 actor.agent.invalid; another person's agent is 404 actor.agent.not_found.",
+ "description": "actor.agent-manage-request@1: bodies of actor.agent.manage on OpenVibe.Actor. POST /api/v1/me/agents { name, instructions, mode?, budget_per_run_usd?, daily_runs_max?, schedule?, schedule_at?, schedule_dow?, quiet_from?, quiet_to?, status? } creates a personal agent (10 per person: 429 actor.agent.limit); PATCH /api/v1/me/agents/:id takes any subset. POST /api/v1/me/agents/:id/memory { text } adds a note (1–1000 characters; 50 notes, the oldest agent-written note goes first, a person's note never automatically) and PATCH /api/v1/me/agents/:id/memory/:mem { text } edits one. Unknown fields are 422 actor.agent.invalid; another person's agent is 404 actor.agent.not_found.",
"anyOf": [
"anyOf": [
{
{
"type": "object",
"type": "object",
@@ -76785,6 +76785,22 @@
@@ -76785,6 +76785,22 @@
"maximum": 6,
"maximum": 6,
"description": "0 is Sunday; for weekly."
"description": "0 is Sunday; for weekly."
},
},
+ "quiet_from": {
+ "type": [
+ "string",
+ "null"
+ ],
+ "pattern": "^([01][0-9]|2[0-3]):[0-5][0-9]$",
+ "description": "HH:MM UTC: quiet hours start. No scheduled run starts from quiet_from to quiet_to (the window may cross midnight; an hourly run waits until it ends); a run its owner starts still runs. Both or neither."
+ },
+ "quiet_to": {
+ "type": [
+ "string",
+ "null"
+ ],
+ "pattern": "^([01][0-9]|2[0-3]):[0-5][0-9]$",
+ "description": "HH:MM UTC: quiet hours end."
+ },
"status": {
"status": {
"enum": [
"enum": [
"active",
"active",
@@ -76900,6 +76916,22 @@
@@ -76900,6 +76916,22 @@
"maximum": 6,
"maximum": 6,
"description": "0 is Sunday; for weekly."
"description": "0 is Sunday; for weekly."
},
},
+ "quiet_from": {
+ "type": [
+ "string",
+ "null"
+ ],
+ "pattern": "^([01][0-9]|2[0-3]):[0-5][0-9]$",
+ "description": "HH:MM UTC: quiet hours start. No scheduled run starts from quiet_from to quiet_to (the window may cross midnight; an hourly run waits until it ends); a run its owner starts still runs. Both or neither."
+ },
+ "quiet_to": {
+ "type": [
+ "string",
+ "null"
+ ],
+ "pattern": "^([01][0-9]|2[0-3]):[0-5][0-9]$",
+ "description": "HH:MM UTC: quiet hours end."
+ },
"status": {
"status": {
"enum": [
"enum": [
"active",
"active",
@@ -77051,6 +77083,22 @@
@@ -77051,6 +77083,22 @@
"maximum": 6,
"maximum": 6,
"description": "0 is Sunday; for weekly."
"description": "0 is Sunday; for weekly."
},
},
+ "quiet_from": {
+ "type": [
+ "string",
+ "null"
+ ],
+ "pattern": "^([01][0-9]|2[0-3]):[0-5][0-9]$",
+ "description": "HH:MM UTC: quiet hours start. No scheduled run starts from quiet_from to quiet_to (the window may cross midnight; an hourly run waits until it ends); a run its owner starts still runs. Both or neither."
+ },
+ "quiet_to": {
+ "type": [
+ "string",
+ "null"
+ ],
+ "pattern": "^([01][0-9]|2[0-3]):[0-5][0-9]$",
+ "description": "HH:MM UTC: quiet hours end."
+ },
"status": {
"status": {
"enum": [
"enum": [
"active",
"active",
@@ -1406,7 +1406,7 @@
@@ -1406,7 +1406,7 @@
},
},
"actor.agent-manage-request.v1": {
"actor.agent-manage-request.v1": {
"title": "ActorAgentManageRequest",
"title": "ActorAgentManageRequest",
- "description": "actor.agent-manage-request@1: bodies of actor.agent.manage on OpenVibe.Actor. POST /api/v1/me/agents { name, instructions, mode?, budget_per_run_usd?, daily_runs_max?, schedule?, schedule_at?, schedule_dow?, status? } creates a personal agent (10 per person: 429 actor.agent.limit); PATCH /api/v1/me/agents/:id takes any subset. POST /api/v1/me/agents/:id/memory { text } adds a note (1–1000 characters; 50 notes, the oldest agent-written note goes first, a person's note never automatically) and PATCH /api/v1/me/agents/:id/memory/:mem { text } edits one. Unknown fields are 422 actor.agent.invalid; another person's agent is 404 actor.agent.not_found.",
+ "description": "actor.agent-manage-request@1: bodies of actor.agent.manage on OpenVibe.Actor. POST /api/v1/me/agents { name, instructions, mode?, budget_per_run_usd?, daily_runs_max?, schedule?, schedule_at?, schedule_dow?, quiet_from?, quiet_to?, status? } creates a personal agent (10 per person: 429 actor.agent.limit); PATCH /api/v1/me/agents/:id takes any subset. POST /api/v1/me/agents/:id/memory { text } adds a note (1–1000 characters; 50 notes, the oldest agent-written note goes first, a person's note never automatically) and PATCH /api/v1/me/agents/:id/memory/:mem { text } edits one. Unknown fields are 422 actor.agent.invalid; another person's agent is 404 actor.agent.not_found.",
"anyOf": [
"anyOf": [
{
{
"type": "object",
"type": "object",
@@ -1466,6 +1466,22 @@
@@ -1466,6 +1466,22 @@
"maximum": 6,
"maximum": 6,
"description": "0 is Sunday; for weekly."
"description": "0 is Sunday; for weekly."
},
},
+ "quiet_from": {
+ "type": [
+ "string",
+ "null"
+ ],
+ "pattern": "^([01][0-9]|2[0-3]):[0-5][0-9]$",
+ "description": "HH:MM UTC: quiet hours start. No scheduled run starts from quiet_from to quiet_to (the window may cross midnight; an hourly run waits until it ends); a run its owner starts still runs. Both or neither."
+ },
+ "quiet_to": {
+ "type": [
+ "string",
+ "null"
+ ],
+ "pattern": "^([01][0-9]|2[0-3]):[0-5][0-9]$",
+ "description": "HH:MM UTC: quiet hours end."
+ },
"status": {
"status": {
"enum": [
"enum": [
"active",
"active",
@@ -1574,6 +1590,22 @@
@@ -1574,6 +1590,22 @@
"maximum": 6,
"maximum": 6,
"description": "0 is Sunday; for weekly."
"description": "0 is Sunday; for weekly."
},
},
+ "quiet_from": {
+ "type": [
+ "string",
+ "null"
+ ],
+ "pattern": "^([01][0-9]|2[0-3]):[0-5][0-9]$",
+ "description": "HH:MM UTC: quiet hours start. No scheduled run starts from quiet_from to quiet_to (the window may cross midnight; an hourly run waits until it ends); a run its owner starts still runs. Both or neither."
+ },
+ "quiet_to": {
+ "type": [
+ "string",
+ "null"
+ ],
+ "pattern": "^([01][0-9]|2[0-3]):[0-5][0-9]$",
+ "description": "HH:MM UTC: quiet hours end."
+ },
"status": {
"status": {
"enum": [
"enum": [
"active",
"active",
@@ -1725,6 +1757,22 @@
@@ -1725,6 +1757,22 @@
"maximum": 6,
"maximum": 6,
"description": "0 is Sunday; for weekly."
"description": "0 is Sunday; for weekly."
},
},
+ "quiet_from": {
+ "type": [
+ "string",
+ "null"
+ ],
+ "pattern": "^([01][0-9]|2[0-3]):[0-5][0-9]$",
+ "description": "HH:MM UTC: quiet hours start. No scheduled run starts from quiet_from to quiet_to (the window may cross midnight; an hourly run waits until it ends); a run its owner starts still runs. Both or neither."
+ },
+ "quiet_to": {
+ "type": [
+ "string",
+ "null"
+ ],
+ "pattern": "^([01][0-9]|2[0-3]):[0-5][0-9]$",
+ "description": "HH:MM UTC: quiet hours end."
+ },
"status": {
"status": {
"enum": [
"enum": [
"active",
"active",
@@ -200335,7 +200335,7 @@ export interface ActorTaskCreateRequest {
@@ -200335,7 +200335,7 @@ export interface ActorTaskCreateRequest {
/** [email protected] (owner: actor) */
/** [email protected] (owner: actor) */
/**
/**
- * actor.agent-manage-request@1: bodies of actor.agent.manage on OpenVibe.Actor. POST /api/v1/me/agents { name, instructions, mode?, budget_per_run_usd?, daily_runs_max?, schedule?, schedule_at?, schedule_dow?, status? } creates a personal agent (10 per person: 429 actor.agent.limit); PATCH /api/v1/me/agents/:id takes any subset. POST /api/v1/me/agents/:id/memory { text } adds a note (1–1000 characters; 50 notes, the oldest agent-written note goes first, a person's note never automatically) and PATCH /api/v1/me/agents/:id/memory/:mem { text } edits one. Unknown fields are 422 actor.agent.invalid; another person's agent is 404 actor.agent.not_found.
+ * actor.agent-manage-request@1: bodies of actor.agent.manage on OpenVibe.Actor. POST /api/v1/me/agents { name, instructions, mode?, budget_per_run_usd?, daily_runs_max?, schedule?, schedule_at?, schedule_dow?, quiet_from?, quiet_to?, status? } creates a personal agent (10 per person: 429 actor.agent.limit); PATCH /api/v1/me/agents/:id takes any subset. POST /api/v1/me/agents/:id/memory { text } adds a note (1–1000 characters; 50 notes, the oldest agent-written note goes first, a person's note never automatically) and PATCH /api/v1/me/agents/:id/memory/:mem { text } edits one. Unknown fields are 422 actor.agent.invalid; another person's agent is 404 actor.agent.not_found.
*/
*/
export type ActorAgentManageRequest =
export type ActorAgentManageRequest =
| {
| {
@@ -200356,6 +200356,14 @@ export type ActorAgentManageRequest =
@@ -200356,6 +200356,14 @@ export type ActorAgentManageRequest =
* 0 is Sunday; for weekly.
* 0 is Sunday; for weekly.
*/
*/
schedule_dow?: number | null;
schedule_dow?: number | null;
+ /**
+ * HH:MM UTC: quiet hours start. No scheduled run starts from quiet_from to quiet_to (the window may cross midnight; an hourly run waits until it ends); a run its owner starts still runs. Both or neither.
+ */
+ quiet_from?: string | null;
+ /**
+ * HH:MM UTC: quiet hours end.
+ */
+ quiet_to?: string | null;
status?: "active" | "paused";
status?: "active" | "paused";
}
}
| {
| {
@@ -200388,6 +200396,14 @@ export type ActorAgentManageResult =
@@ -200388,6 +200396,14 @@ export type ActorAgentManageResult =
* 0 is Sunday; for weekly.
* 0 is Sunday; for weekly.
*/
*/
schedule_dow?: number | null;
schedule_dow?: number | null;
+ /**
+ * HH:MM UTC: quiet hours start. No scheduled run starts from quiet_from to quiet_to (the window may cross midnight; an hourly run waits until it ends); a run its owner starts still runs. Both or neither.
+ */
+ quiet_from?: string | null;
+ /**
+ * HH:MM UTC: quiet hours end.
+ */
+ quiet_to?: string | null;
status: "active" | "paused";
status: "active" | "paused";
next_run_at?: string | null;
next_run_at?: string | null;
last_run_at?: string | null;
last_run_at?: string | null;
@@ -200426,6 +200442,14 @@ export type ActorAgentManageResult =
@@ -200426,6 +200442,14 @@ export type ActorAgentManageResult =
* 0 is Sunday; for weekly.
* 0 is Sunday; for weekly.
*/
*/
schedule_dow?: number | null;
schedule_dow?: number | null;
+ /**
+ * HH:MM UTC: quiet hours start. No scheduled run starts from quiet_from to quiet_to (the window may cross midnight; an hourly run waits until it ends); a run its owner starts still runs. Both or neither.
+ */
+ quiet_from?: string | null;
+ /**
+ * HH:MM UTC: quiet hours end.
+ */
+ quiet_to?: string | null;
status: "active" | "paused";
status: "active" | "paused";
next_run_at?: string | null;
next_run_at?: string | null;
last_run_at?: string | null;
last_run_at?: string | null;