Ocalt for

Ocalt for Teams

Stop passing credentials around. A team works inside one namespace with one set of machines, one set of files and one place the work lives — and each person reaches exactly the part of it they should. Access changes take effect on the next query rather than the next onboarding call, and when someone leaves, revoking them revokes everything at once.

Shared access without shared secrets

Nobody needs the server password, the database credential or the API key of anything. They act for the team, and the team owns the connection. Removing a person removes their reach the moment it is done.

One place the work is

Files, databases, scheduled jobs and registered machines belong to the namespace, not to whoever set them up. A colleague picks up a job without a handover document because the job was never anywhere else.

Everyone sees what happened

Every execution is recorded with what ran and where it came from. Debugging a job that failed at 4am does not depend on someone remembering what they changed.

Granular, not all-or-nothing

Run scripts, files, databases, subdomains, machines, mail, and member management are separate grants. Somebody can be trusted with the deploy without being trusted with the mailbox.

In practice

SELECT ROWS FROM DB "team" TABLE "tasks" WHERE "status" IS IDENTICAL TO "open" SET ?open
AFTER FOREACH ?open SET ?t
OPEN
  EMIT ?t("title") & " — " & ?t("owner") & " — due " & ?t("due") & "\n"
CLOSE

Put a team on one namespace

  1. Create the group in your Ocalt account — a team is a business without the invoicing language.
  2. Add each member and grant only what they need. Change it whenever the work changes; it takes effect on their next query.
  3. Share the machines, not the credentials. A machine registered to the team is addressable by anyone acting for it. Nobody needs a copy of anything.
  4. Keep the work where the team can see it. Scripts, files and databases live in the namespace, not on somebody's laptop.
DIRECTIVE LIST SET ?machines
AFTER FOREACH ?machines SET ?m
OPEN
  EMIT ?m("machine_id") & " online=" & ?m("online") & "\n"
CLOSE

Every plan, including Free, carries the whole language. Open the console, read the documentation, or see what a plan costs.