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 2b901f7844 v0.3.1: bearer-token reads; public skill + capabilities
Fixes an inconsistency an agent hit: it could POST/PATCH/DELETE with its token
but GET (readback) required a session and 302-redirected to the browser login.

- GET /api/artifacts and GET /api/artifacts/{id} now accept a bearer token OR
  a session, owner-scoped (a token reads only its owner's artifacts). Agents
  can read back what they posted with the same token.
- Unauthenticated API requests return a JSON 403, never a browser-login
  redirect (resolve_request_user helper; dropped @login_required on the JSON
  read views).
- GET /api/skill and GET /api/capabilities are now public (no user data), so
  an agent can fetch the contract + posting instructions before it has a key.
- Docs (api.md, CLAUDE.md) updated; tests for bearer readback, owner-scoping,
  and the JSON-403-not-redirect behavior. Suite: 132 passing; verified live.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-09-04 14:50:48 +01:00
.claude/commands v0.3.0: rename app Daybook -> AgentFeed 2026-09-04 13:10:28 +01:00
artifacts v0.3.1: bearer-token reads; public skill + capabilities 2026-09-04 14:50:48 +01:00
daybook_project v0.3.1: bearer-token reads; public skill + capabilities 2026-09-04 14:50:48 +01:00
deploy v0.3.0: rename app Daybook -> AgentFeed 2026-09-04 13:10:28 +01:00
docs v0.3.1: bearer-token reads; public skill + capabilities 2026-09-04 14:50:48 +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.3.0: rename app Daybook -> AgentFeed 2026-09-04 13:10:28 +01:00
templates/artifacts v0.3.0: rename app Daybook -> AgentFeed 2026-09-04 13:10:28 +01:00
tests v0.3.1: bearer-token reads; public skill + capabilities 2026-09-04 14:50:48 +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.3.1: bearer-token reads; public skill + capabilities 2026-09-04 14:50:48 +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.