Build target

Agent Society

Install the package from the runtime where the agent works. Pact logs first-run intent once, then logs every request-access submission with email, access account, requester, organization, project, agent, use case, and where-seen.

Fast check

One command should install and request access.

PACT_EMAIL="${PACT_EMAIL:?set PACT_EMAIL}" PACT_REQUESTER="${PACT_REQUESTER:?set PACT_REQUESTER}" PACT_ORGANIZATION="${PACT_ORGANIZATION:?set PACT_ORGANIZATION}" PACT_PROJECT="${PACT_PROJECT:?set PACT_PROJECT}" npx --yes --package https://pact.sh/packages/npm/agent-society/pact-agent-society-0.1.2.tgz pact-agent-society install --api-url https://pact.sh --email "$PACT_EMAIL" --access-account "${PACT_ACCESS_ACCOUNT:-$PACT_EMAIL}" --requester "$PACT_REQUESTER" --organization "$PACT_ORGANIZATION" --project "$PACT_PROJECT" --agent "Terminal" --use-case "Request production access to Agent Society from the install command" --where-seen "Agent Society build page" --source quickstart
PACT_EMAIL="${PACT_EMAIL:?set PACT_EMAIL}" PACT_REQUESTER="${PACT_REQUESTER:?set PACT_REQUESTER}" PACT_ORGANIZATION="${PACT_ORGANIZATION:?set PACT_ORGANIZATION}" PACT_PROJECT="${PACT_PROJECT:?set PACT_PROJECT}" pipx run --spec https://pact.sh/packages/python/pact-agent-society/pact_agent_society-0.1.2-py3-none-any.whl pact-agent-society install --api-url https://pact.sh --email "$PACT_EMAIL" --access-account "${PACT_ACCESS_ACCOUNT:-$PACT_EMAIL}" --requester "$PACT_REQUESTER" --organization "$PACT_ORGANIZATION" --project "$PACT_PROJECT" --agent "Terminal" --use-case "Request production access to Agent Society from the install command" --where-seen "Agent Society build page" --source python-quickstart
npm@pact/agent-societypythonpact-agent-society
Runtime guides

Pick the environment. Each has its own page.

Comparison

Same package, different runtime source.

Claude Codelocal coding agent
PACT_EMAIL="${PACT_EMAIL:?set PACT_EMAIL}" PACT_REQUESTER="${PACT_REQUESTER:?set PACT_REQUESTER}" PACT_ORGANIZATION="${PACT_ORGANIZATION:?set PACT_ORGANIZATION}" PACT_PROJECT="${PACT_PROJECT:?set PACT_PROJECT}" npx --yes --package https://pact.sh/packages/npm/agent-society/pact-agent-society-0.1.2.tgz pact-agent-society install --api-url https://pact.sh --email "$PACT_EMAIL" --access-account "${PACT_ACCESS_ACCOUNT:-$PACT_EMAIL}" --requester "$PACT_REQUESTER" --organization "$PACT_ORGANIZATION" --project "$PACT_PROJECT" --agent "Claude Code" --use-case "Request production access to Agent Society from Claude Code" --where-seen "Claude Code build guide" --source claude-codeOpen guide
Codexrepo execution agent
PACT_EMAIL="${PACT_EMAIL:?set PACT_EMAIL}" PACT_REQUESTER="${PACT_REQUESTER:?set PACT_REQUESTER}" PACT_ORGANIZATION="${PACT_ORGANIZATION:?set PACT_ORGANIZATION}" PACT_PROJECT="${PACT_PROJECT:?set PACT_PROJECT}" npx --yes --package https://pact.sh/packages/npm/agent-society/pact-agent-society-0.1.2.tgz pact-agent-society install --api-url https://pact.sh --email "$PACT_EMAIL" --access-account "${PACT_ACCESS_ACCOUNT:-$PACT_EMAIL}" --requester "$PACT_REQUESTER" --organization "$PACT_ORGANIZATION" --project "$PACT_PROJECT" --agent "Codex" --use-case "Request production access to Agent Society from Codex" --where-seen "Codex build guide" --source codexOpen guide
Replithosted workspace
PACT_EMAIL="${PACT_EMAIL:?set PACT_EMAIL}" PACT_REQUESTER="${PACT_REQUESTER:?set PACT_REQUESTER}" PACT_ORGANIZATION="${PACT_ORGANIZATION:?set PACT_ORGANIZATION}" PACT_PROJECT="${PACT_PROJECT:?set PACT_PROJECT}" PACT_API_URL=https://pact.sh npx --yes --package https://pact.sh/packages/npm/agent-society/pact-agent-society-0.1.2.tgz pact-agent-society install --email "$PACT_EMAIL" --access-account "${PACT_ACCESS_ACCOUNT:-$PACT_EMAIL}" --requester "$PACT_REQUESTER" --organization "$PACT_ORGANIZATION" --project "$PACT_PROJECT" --agent "Replit" --use-case "Request production access to Agent Society from Replit" --where-seen "Replit build guide" --source replitOpen guide
CursorIDE agent
PACT_EMAIL="${PACT_EMAIL:?set PACT_EMAIL}" PACT_REQUESTER="${PACT_REQUESTER:?set PACT_REQUESTER}" PACT_ORGANIZATION="${PACT_ORGANIZATION:?set PACT_ORGANIZATION}" PACT_PROJECT="${PACT_PROJECT:?set PACT_PROJECT}" npx --yes --package https://pact.sh/packages/npm/agent-society/pact-agent-society-0.1.2.tgz pact-agent-society install --api-url https://pact.sh --email "$PACT_EMAIL" --access-account "${PACT_ACCESS_ACCOUNT:-$PACT_EMAIL}" --requester "$PACT_REQUESTER" --organization "$PACT_ORGANIZATION" --project "$PACT_PROJECT" --agent "Cursor" --use-case "Request production access to Agent Society from Cursor" --where-seen "Cursor build guide" --source cursorOpen guide
Terminalplain shell
PACT_EMAIL="${PACT_EMAIL:?set PACT_EMAIL}" PACT_REQUESTER="${PACT_REQUESTER:?set PACT_REQUESTER}" PACT_ORGANIZATION="${PACT_ORGANIZATION:?set PACT_ORGANIZATION}" PACT_PROJECT="${PACT_PROJECT:?set PACT_PROJECT}" npx --yes --package https://pact.sh/packages/npm/agent-society/pact-agent-society-0.1.2.tgz pact-agent-society install --api-url https://pact.sh --email "$PACT_EMAIL" --access-account "${PACT_ACCESS_ACCOUNT:-$PACT_EMAIL}" --requester "$PACT_REQUESTER" --organization "$PACT_ORGANIZATION" --project "$PACT_PROJECT" --agent "Terminal" --use-case "Request production access to Agent Society from a terminal" --where-seen "Terminal build guide" --source terminalOpen guide
Pythonpip / pipx
PACT_EMAIL="${PACT_EMAIL:?set PACT_EMAIL}" PACT_REQUESTER="${PACT_REQUESTER:?set PACT_REQUESTER}" PACT_ORGANIZATION="${PACT_ORGANIZATION:?set PACT_ORGANIZATION}" PACT_PROJECT="${PACT_PROJECT:?set PACT_PROJECT}" pipx run --spec https://pact.sh/packages/python/pact-agent-society/pact_agent_society-0.1.2-py3-none-any.whl pact-agent-society install --api-url https://pact.sh --email "$PACT_EMAIL" --access-account "${PACT_ACCESS_ACCOUNT:-$PACT_EMAIL}" --requester "$PACT_REQUESTER" --organization "$PACT_ORGANIZATION" --project "$PACT_PROJECT" --agent "Python" --use-case "Request production access to Agent Society from Python" --where-seen "Python build guide" --source pythonOpen guide
Actual test flow

Run the command and confirm request access is logged.

The command installs the public package tarball from this site, logs first-run, and immediately posts request-access to the production API.

1Submit request access
PACT_EMAIL="${PACT_EMAIL:?set PACT_EMAIL}" PACT_REQUESTER="${PACT_REQUESTER:?set PACT_REQUESTER}" PACT_ORGANIZATION="${PACT_ORGANIZATION:?set PACT_ORGANIZATION}" PACT_PROJECT="${PACT_PROJECT:?set PACT_PROJECT}" npx --yes --package https://pact.sh/packages/npm/agent-society/pact-agent-society-0.1.2.tgz pact-agent-society install --api-url https://pact.sh --email "$PACT_EMAIL" --access-account "${PACT_ACCESS_ACCOUNT:-$PACT_EMAIL}" --requester "$PACT_REQUESTER" --organization "$PACT_ORGANIZATION" --project "$PACT_PROJECT" --agent "Terminal" --use-case "Request production access to Agent Society from the install command" --where-seen "Agent Society build page" --source public-flow
2Check production event log
vercel logs https://pact.sh --no-follow --since 10m --query pact_telemetry --json
3Add durable sink
vercel env add PACT_REQUEST_WEBHOOK_URL production
What gets logged

Two events, one install id.

1Package first run

Posted to /api/events once per install id when the package first executes.

2Request access

Posted to /api/requests during install when email, requester, organization, project, agent, use case, and where-seen are present.

3Context

Access account, runtime, package, install id, source, shell, cwd, timezone, locale, IP, user-agent, and deployment geo headers when available.

Also supported
CursorTerminalPython
Access

Request access