Skip to main content

Local-first personal work agent

Project description

personal-work-agent

Local-first personal work agent prototype.

Quick start:

uv tool install git+https://github.com/HHC225/pwa.git
uv tool update-shell
w10w225

If uv already manages your shell PATH, uv tool update-shell is not required. If w10w225 is not found after install, run it once and open a new terminal.

By default, the installed tool targets the production review server at https://w10w225.uk. For local development, override WORKAGENT_REVIEW_BASE_URL in your environment or local .env.

After install

Use the installed w10w225 command for all normal actions.

  1. Install the local agent on their own machine with uv tool install.
  2. Run w10w225 installation-id and copy the generated UUID.
  3. Open w10w225 Assistant Settings and save that value in Local Agent Installation ID.
  4. Start the local daemon with w10w225 serve --background.
  5. Use /agent ... in w10w225.

If the user has not installed/configured their own local agent, /agent ... should not route to any local runtime.

Useful commands

  • Show registration values: w10w225 installation-id
  • Start the local daemon: w10w225 serve --background
  • Run the setup wizard again: w10w225 config wizard
  • Check daemon health: w10w225 status
  • Run diagnostics: w10w225 doctor
  • Stop the daemon: w10w225 stop
  • Run one sync cycle: w10w225 sync once
  • Update the installed tool: uv tool upgrade w10w225
  • Remove the installed tool: uv tool uninstall w10w225

Required Secret Match

The server and the local agent must share the same HMAC secret.

  • nk304 server env: ASSISTANT_LOCAL_AGENT_SHARED_SECRET
  • local agent env: WORKAGENT_REVIEW_SHARED_SECRET

Those two values must be identical.

Transport Model

w10w225 and the local agent now use:

  • outbound Socket.IO / WebSocket as the primary transport
  • HTTP polling and HTTP ack/result as fallback when the socket is unavailable

The local agent never requires an inbound public port. It opens the connection to w10w225 itself.

Docs:

  • docs/install.md shows the standard uv tool install / upgrade / uninstall flow.
  • docs/examples/config.toml shows a local sample config file.
  • docs/bootstrap/quick-start.md shows the source-checkout bootstrap entrypoint and doctor flow.
  • docs/bootstrap/contract.md defines the supported matrix, statuses, privilege boundaries, and shell profile handoff.
  • docs/bootstrap/macos.md, docs/bootstrap/linux.md, and docs/bootstrap/wsl.md cover platform-specific notes.
  • docs/bootstrap/unsupported.md explains unsupported source-bootstrap environments and where bootstrap logs/receipts live.
  • docs/bootstrap/troubleshooting.md covers source-bootstrap rerun/recovery, bootstrap boundaries, and first-run handoff.
  • docs/operations/uv-distribution-release.md tracks the temporary Git-source install contract and the later published-package release contract.
  • docs/operations/mvp1-local-recovery.md covers local backup and recovery steps.
  • docs/operations/mvp2-memory-repair.md covers local memory export/compact/integrity steps.
  • docs/operations/mvp2-w10w225bot.md covers w10w225bot service user requirements.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

w10w225-0.1.28.tar.gz (193.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

w10w225-0.1.28-py3-none-any.whl (285.7 kB view details)

Uploaded Python 3

File details

Details for the file w10w225-0.1.28.tar.gz.

File metadata

  • Download URL: w10w225-0.1.28.tar.gz
  • Upload date:
  • Size: 193.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.2 {"installer":{"name":"uv","version":"0.10.2","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for w10w225-0.1.28.tar.gz
Algorithm Hash digest
SHA256 7ab2a838f10ce1f6d0af4ac56f07d9e19340196467c9226f756755debfb06c2d
MD5 48c2cf3f71271adafaeaa902fa5975dd
BLAKE2b-256 6e4d90e76eed8de5d50b2a44a1aea1c16c12e085b7b71c5eceb16cbf114c0577

See more details on using hashes here.

File details

Details for the file w10w225-0.1.28-py3-none-any.whl.

File metadata

  • Download URL: w10w225-0.1.28-py3-none-any.whl
  • Upload date:
  • Size: 285.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.2 {"installer":{"name":"uv","version":"0.10.2","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for w10w225-0.1.28-py3-none-any.whl
Algorithm Hash digest
SHA256 f031bc8fab2127bd67fb4aba332051c0ffed44d6fc57a74316c220c4a7db4062
MD5 2b4dbc8cadf505c0b9c35d8bb55e47e0
BLAKE2b-256 5ed65ad8112c041a5f9f46fd91146066c86a747f704d88592fd697e593f91f35

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page