Skip to content
What's new

The first open-source release of OneCamp with AI teammates

The server is now AGPL-3.0; see the README for the four ways to run it.

Highlights of the 2.3x releases

  • Inbox: your own Gmail inside OneCamp. Read, search, summarise, reply in the same conversation, and turn an email into a task. Remote images are removed, so opening an email tells its sender nothing.
  • Model per job: an admin can send summaries, meeting recaps and workspace memory each to their own model from the approved list (Admin, AI models).
  • Slack bridge: a Slack channel and a OneCamp channel carry one conversation, both ways, while a team moves over. Guide.
  • Signed agent actions: every action an agent takes is signed as it is recorded; an agent's run history checks the signatures.
  • Agents tell their sponsor privately instead of interrupting a channel, and notice related discussions elsewhere (private notes only).
  • Agents check the thing itself before calling work done, continue long jobs in a new session, and add follow-ups to their existing pull request.

Security

  • The collaboration service no longer falls back to a built-in internal secret, and the server refuses internal requests if INTERNAL_SECRET is a known default or shorter than 16 characters. Installs made with make install already had a random value. If you set yours by hand, check the server log after updating.
  • Sending an email refuses line breaks in the recipient and subject.

Fixes

v2.38.2 with AI · v1.24.2 without AI

  • Build and install OneCamp from source: scripts/package-from-source.sh builds the server and lays it out exactly like the official release, and the repository now carries the environment template (.sample.env) that make install needs. See Run it from source.

v2.38.3 with AI · v1.24.3 without AI

  • Maintenance release: the public repository now carries vars/.env.prod, the environment template every install starts from, so the test suite runs green here as it does in our own CI. No change to the server's behaviour.

v2.38.4 with AI · v1.24.4 without AI

  • If Google ends your Gmail connection (password change, access removed, expiry), the Inbox now says so and offers Reconnect Gmail, instead of "Gmail did not answer".
  • Connecting from the Inbox brings you back to the Inbox.
  • Non-ASCII subjects and names in replies arrive intact; the "Open in Gmail" link opens the right Google account.
  • Clearer answers for a deleted conversation, Gmail rate limits, or a Gmail API that is off in your Google Cloud project.
  • The shared demo account can no longer connect anyone's own Gmail, Calendar or GitHub (DEMO_MODE only; no change for your install).

v2.38.5 with AI · v1.24.5 without AI

  • Inbox "Network Error": errors from the server reached the browser as "Network Error" behind Cloudflare, which replaces 502/504 answers with a page the browser cannot read. The server now answers 503 with its real message, and a test keeps 502/504 out of every handler.
  • Gmail that could not be read: a saved connection the server cannot decrypt now asks you to reconnect instead of reporting an outage.
  • Meeting recordings list: a malformed query made the list fail for anyone with a recording in a direct message. Fixed, and a test now checks every database query for the same mistake.
  • Agent progress on boards: agent work events never reached the project they belong to, so boards did not update live. Fixed.
  • Channel notifications: rejoining a channel no longer fails on, or resets, the notification setting you chose.
  • Concurrent edits to the same person (signing in while an agent is set up, say) are retried instead of failing.

Install with one emailv2.38.6 with AI · v1.24.6 without AI

  • make install EMAIL=you@example.com is all it takes now:
  • No domain needed. Without DOMAIN=, the workspace answers at onecamp.<your-ip>.sslip.io, with a real certificate and no DNS records. If Let's Encrypt's shared sslip.io quota is spent, it moves to nip.io by itself. Move to your own domain any time with make replace-domain DOMAIN=example.com && make build_restart_all.
  • No password needed. The Traefik dashboard password is generated and printed once when you do not pass one.
  • 4 GB of RAM is enough. Virus scanning of uploads (ClamAV, about 2 GB on its own) now runs on machines with 7 GB or more; make tune decides, at install and at every update. Existing installs on 8 GB or more keep scanning.
  • Moving domains now moves calls too. make replace-domain re-points LiveKit's TURN host and webhook, which it used to leave on the old domain.
v2.38.1 with AI · v1.24.1 without AI