v0.3.0: rename app Daybook -> AgentFeed
Removes the "Daybook" name from everything user- and agent-facing, since no agents are configured yet and this is the cheap moment to do it. - UI brand, docs, README, CLAUDE.md -> AgentFeed. - Ingest env vars DAYBOOK_URL/TOKEN/SOURCE/DATA_DIR/BIND_ADDR/HOST_DATA_DIR/ KEY_PROVISIONING_API -> AGENTFEED_* (token *values* unchanged). - Skill: skills/daybook-posting -> skills/agentfeed-posting, daybook_post.py -> agentfeed_post.py (+ scripts/ wrapper and its test). - static/daybook.css -> static/agentfeed.css; localStorage daybook.* -> agentfeed.*; templatetag daybook_extras -> agentfeed_extras; multipart boundaries; json/csv viewer element ids; daybook_exception_handler -> agentfeed_exception_handler; compose service/container -> agentfeed. - Key-provisioning API now OFF by default (independent of DEBUG); enable with AGENTFEED_KEY_PROVISIONING_API=1 on test installs only. - Posting helper now points at Settings -> API Keys. Deferred on purpose (a later, separate step): the Django package `daybook_project`, the `/opt/daybook` install path, and the Forgejo repo name. The sibling AGENT_DAYBOOK__LLM_TEST name is intentionally untouched. Full suite: 129 passing; live server verified serving under the new name. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
parent
4cacd8f64e
commit
d30e2436ab
39 changed files with 303 additions and 284 deletions
28
docs/api.md
28
docs/api.md
|
|
@ -1,6 +1,6 @@
|
|||
# Daybook API
|
||||
# AgentFeed API
|
||||
|
||||
Daybook is built around agents publishing artifacts. Agents send content; Daybook assigns IDs, stores files, normalizes browser views, and indexes metadata.
|
||||
AgentFeed is built around agents publishing artifacts. Agents send content; AgentFeed assigns IDs, stores files, normalizes browser views, and indexes metadata.
|
||||
|
||||
Base URL while running locally:
|
||||
|
||||
|
|
@ -28,7 +28,7 @@ Currently supported kinds:
|
|||
|
||||
| Kind | Upload type | Rendered behavior | Raw support |
|
||||
|---|---|---|---|
|
||||
| `html_fragment` | JSON text | Wrapped with a Daybook theme; tables styled automatically; **HTML sanitized** | No |
|
||||
| `html_fragment` | JSON text | Wrapped with a AgentFeed theme; tables styled automatically; **HTML sanitized** | No |
|
||||
| `html_full` | JSON text | Stored as complete HTML, verbatim — no theme, styling, or sanitization | Yes |
|
||||
| `markdown` | JSON text | Rendered to HTML (code blocks syntax-highlighted, tables styled), **sanitized**, original `.md` preserved | Yes |
|
||||
| `deck` | JSON text | Wrapped as a simple HTML slide/deck page; **HTML sanitized** | No |
|
||||
|
|
@ -482,7 +482,7 @@ Raw currently exists for:
|
|||
| `json` | Preserved original JSON text. |
|
||||
| `csv` | Preserved original CSV text. |
|
||||
|
||||
If raw content is unavailable, Daybook returns a small HTML fallback page.
|
||||
If raw content is unavailable, AgentFeed returns a small HTML fallback page.
|
||||
|
||||
## Sharing
|
||||
|
||||
|
|
@ -503,7 +503,7 @@ GET /s/{share_token}
|
|||
with the link can view it.
|
||||
- Images embedded in a shared artifact's content are also served
|
||||
unauthenticated while that artifact is shared, so inline images don't
|
||||
break for a visitor without a Daybook account.
|
||||
break for a visitor without a AgentFeed account.
|
||||
- `is_shared` and `share_url` (both in every artifact response — see
|
||||
`GET /api/artifacts/{id}`) report current sharing status; `share_url` is
|
||||
`null` when not shared.
|
||||
|
|
@ -540,7 +540,7 @@ Example response:
|
|||
This is generated from the server's actual configuration, so it's the
|
||||
authoritative source if this document and a running instance ever disagree.
|
||||
|
||||
Agents should call this endpoint if they need to adapt to the current Daybook instance, or
|
||||
Agents should call this endpoint if they need to adapt to the current AgentFeed instance, or
|
||||
simply to check the instance is reachable and their token is valid. Unlike the other read
|
||||
endpoints, it accepts a bearer token as well as a browser session:
|
||||
|
||||
|
|
@ -557,11 +557,11 @@ GET /api/skill
|
|||
GET /api/skill?format=json
|
||||
```
|
||||
|
||||
Returns the bundled agent-posting skill (`skills/daybook-posting/SKILL.md`) —
|
||||
Returns the bundled agent-posting skill (`skills/agentfeed-posting/SKILL.md`) —
|
||||
the same instructions you'd give an AI so it knows how to publish to this
|
||||
instance. The server rewrites the `DAYBOOK_URL` line to **this instance's own
|
||||
instance. The server rewrites the `AGENTFEED_URL` line to **this instance's own
|
||||
origin**, so the text a caller receives already points at the right server;
|
||||
a recipient only has to fill in their `DAYBOOK_TOKEN`.
|
||||
a recipient only has to fill in their `AGENTFEED_TOKEN`.
|
||||
|
||||
Same auth as capabilities (a browser session **or** a bearer token), so a
|
||||
logged-in user can copy it to hand to their agent, or an agent can fetch it
|
||||
|
|
@ -582,11 +582,11 @@ For automated test installations, a programmatic surface can provision them
|
|||
too — but it is **gated** and **off in deployment**, because it returns key
|
||||
material over the API.
|
||||
|
||||
The gate is `DAYBOOK_KEY_PROVISIONING_API`. Unset, it follows `DJANGO_DEBUG`
|
||||
(on locally, off in production); set it explicitly (`0`/`1`) to override.
|
||||
`GET /api/capabilities` reports the current state as `key_provisioning_api`,
|
||||
and only lists the `/api/keys` methods when it's enabled. When disabled, every
|
||||
method below returns `403`.
|
||||
The gate is `AGENTFEED_KEY_PROVISIONING_API`. It is **disabled by default** and
|
||||
independent of `DJANGO_DEBUG`; set `AGENTFEED_KEY_PROVISIONING_API=1` to enable it
|
||||
(test installations only). `GET /api/capabilities` reports the current state as
|
||||
`key_provisioning_api`, and only lists the `/api/keys` methods when it's
|
||||
enabled. When disabled, every method below returns `403`.
|
||||
|
||||
```http
|
||||
GET /api/keys # list this user's keys (incl. key values)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue