Agent daybook is a web application that allows tracking multiple feeds of artifacts (reports, notes, log items etc. etc.) - all the things that AI agents would be producing all day long.
Find a file
peter cae414c307 v0.4.0: live feed updates (auto-insert new posts)
New artifacts appear at the top of the feed without a manual refresh.

- GET /feed/updates (session-authed): new artifacts since a timestamp marker,
  owner-scoped and filter-aware (source/label/kind/q), returned as row HTML.
- Feed JS polls every 5s, paused while the tab is hidden (immediate poll on
  refocus). Prepends new rows into today's group without touching the selected
  row or the preview iframe — what you're reading stays put and selected.
- Fresh rows show "now", aging into their real time after ~3 min; brief
  highlight on arrival.
- Extracted _artifact_rows.html partial, shared by the day-group render and the
  updates endpoint, so live rows match exactly.
- Polling chosen over SSE/WebSockets: zero infra on sync-WSGI + SQLite (see
  planning/next_steps for the SSE upgrade path). 142 tests pass; feed page +
  endpoint verified.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-09-04 23:02:07 +01:00
.claude/commands v0.3.0: rename app Daybook -> AgentFeed 2026-09-04 13:10:28 +01:00
artifacts v0.4.0: live feed updates (auto-insert new posts) 2026-09-04 23:02:07 +01:00
daybook_project v0.4.0: live feed updates (auto-insert new posts) 2026-09-04 23:02:07 +01:00
deploy v0.3.0: rename app Daybook -> AgentFeed 2026-09-04 13:10:28 +01:00
docs v0.3.2: add GET /api/artifacts/{id}/raw for content read-back 2026-09-04 15:20:37 +01:00
issues Issues: file in-app guide (020); archive completed issues 2026-09-04 11:41:03 +01:00
scripts v0.3.0: rename app Daybook -> AgentFeed 2026-09-04 13:10:28 +01:00
skills/agentfeed-posting v0.3.0: rename app Daybook -> AgentFeed 2026-09-04 13:10:28 +01:00
static v0.4.0: live feed updates (auto-insert new posts) 2026-09-04 23:02:07 +01:00
templates/artifacts v0.4.0: live feed updates (auto-insert new posts) 2026-09-04 23:02:07 +01:00
tests v0.4.0: live feed updates (auto-insert new posts) 2026-09-04 23:02:07 +01:00
.dockerignore Initial public commit 2026-09-01 21:55:02 +01:00
.gitignore Initial public commit 2026-09-01 21:55:02 +01:00
CHANGELOG.md v0.4.0: live feed updates (auto-insert new posts) 2026-09-04 23:02:07 +01:00
CLAUDE.md v0.3.1: bearer-token reads; public skill + capabilities 2026-09-04 14:50:48 +01:00
manage.py Initial public commit 2026-09-01 21:55:02 +01:00
README.md v0.3.0: rename app Daybook -> AgentFeed 2026-09-04 13:10:28 +01:00
requirements.txt Fix #014: sanitize themed text kinds + script-blocking CSP (stored XSS) 2026-09-03 10:44:49 +01:00

AgentFeed

AgentFeed is a self-hosted, multi-user artifact journal. AI agents, scripts, or people publish finished outputs — reports, HTML, images, PDFs, decks, JSON, CSV — and each logged-in user browses their own time-ordered, label-filterable feed. The core principle: agents publish content, not files. The server owns IDs, styling, storage layout, dates, and normalization into browser-native HTML / image / PDF output.

Built with Django + Django REST Framework, SQLite, and WhiteNoise; deployed as a single Docker container.

Quick start (local development)

python -m venv .venv
.venv/Scripts/python -m pip install -r requirements.txt   # Windows; use .venv/bin on POSIX
python manage.py migrate
python manage.py createsuperuser
python manage.py runserver 127.0.0.1:8001

Then open http://127.0.0.1:8001/ and log in.

  • Post as an agent: create a key under Settings → API Keys, then use it as Authorization: Bearer <key>. Each user can hold several keys (one per agent), each revocable on its own.
  • Health check / contract: GET /api/capabilities.
  • Ready-to-use posting instructions for an AI: GET /api/skill returns the bundled posting skill with this instance's URL pre-filled.

Documentation

Doc For
docs/agent_quickstart.md Shortest path to posting from an agent
docs/api.md Full REST API reference (kinds, endpoints, keys, sharing)
docs/llm_posting_helper.md Using the bundled agentfeed_post.py helper
docs/deployment.md Docker deployment, reverse proxy, /admin/, backup
skills/agentfeed-posting/SKILL.md The agent-posting skill (also served at /api/skill)
CHANGELOG.md Release history

Admin

  • Settings (in-app, themed) is the everyday surface: account, API keys, storage, and — for superusers — user management.
  • Django admin at /admin/ is an operator break-glass tool for raw-data fixes. It requires is_staff (the createsuperuser account has it). See docs/deployment.md for the is_superuser vs is_staff distinction and cautions.

Version

The version is defined once in daybook_project/__init__.py, shown on Settings → About, and reported by GET /api/capabilities. Releases are git-tagged vX.Y.Z.