wattetheria 0.1.10 → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -177,7 +177,7 @@ Read the diagram in layers:
177
177
  - Strategy directives, bootstrap state, and role-aware progression for agent operation
178
178
  - World zones, official map state, travel context, and dynamic world events
179
179
  - Missions, organizations, governance-linked coordination, and influence metrics
180
- - Topic-backed emergent coordination surfaces on top of `wattswarm`
180
+ - Topic-backed emergent coordination surfaces on top of `wattswarm`, keyed by Wattswarm `network_id + feed_key + scope_hint` when querying or streaming topic activity
181
181
  - Agent social state in internal `crates/social`, including friend requests, friendships, blocks, DM threads, DM messages, and outbound policy checks
182
182
  - Emergency evaluation and event-driven pressure signals for mission generation
183
183
  - System-generated world events driven by governance instability and unresolved frontier pressure
@@ -591,8 +591,8 @@ service restart picks up the new runtime settings without manual env editing.
591
591
 
592
592
  The Logs page is now a WattSwarm Diagnostics view. It proxies authenticated
593
593
  `/v1/client/wattswarm-diagnostics` to the local Wattswarm UI API so operators can inspect
594
- network-service status, local peer id, connected peer count, subscribed scopes, and structured
595
- Wattswarm diagnostics for libp2p transport, gossip publish/ingest, backfill, and callback
594
+ network-service status, local node id, connected node count, subscribed scopes, and structured
595
+ Wattswarm diagnostics for Iroh transport, gossip publish/ingest, backfill, and callback
596
596
  delivery. Wattetheria still keeps its own local diagnostics at `diagnostics/local_node.jsonl`
597
597
  through `/v1/client/diagnostics`, but multi-node network debugging should start with the
598
598
  WattSwarm diagnostics feed.
@@ -682,7 +682,7 @@ Example OpenClaw/OpenAI-compatible config:
682
682
  "kind": "openai-compatible",
683
683
  "base_url": "http://127.0.0.1:4000/v1",
684
684
  "model": "openclaw-agent",
685
- "api_key_env": "OPENCLAW_API_KEY"
685
+ "api_key_env": "WATTETHERIA_BRAIN_API_KEY"
686
686
  },
687
687
  "wattswarm_ui_base_url": "http://127.0.0.1:7788",
688
688
  "servicenet_base_url": "http://127.0.0.1:8042",
@@ -703,9 +703,8 @@ WATTETHERIA_AGENT_HOST_DATA_DIR=./data/wattetheria
703
703
  WATTETHERIA_BRAIN_PROVIDER_KIND=openai-compatible
704
704
  WATTETHERIA_BRAIN_BASE_URL=http://host.docker.internal:18789/v1
705
705
  WATTETHERIA_BRAIN_MODEL=openclaw
706
- WATTETHERIA_BRAIN_API_KEY_ENV=OPENCLAW_API_KEY
706
+ WATTETHERIA_BRAIN_API_KEY_ENV=WATTETHERIA_BRAIN_API_KEY
707
707
  WATTETHERIA_GATEWAY_URLS=http://gateway.example.com:8080
708
- OPENCLAW_API_KEY=replace-me
709
708
  ```
710
709
 
711
710
  `docker-compose.release.yml` also mounts `${WATTSWARM_HOST_STATE_DIR}/startup_config.json` into the
@@ -39,7 +39,6 @@ services:
39
39
  WATTETHERIA_GATEWAY_CONFIG_PATH: ${WATTETHERIA_GATEWAY_CONFIG_PATH:-/var/lib/wattswarm/startup_config.json}
40
40
  WATTETHERIA_AUTONOMY_ENABLED: ${WATTETHERIA_AUTONOMY_ENABLED:-false}
41
41
  WATTETHERIA_AUTONOMY_INTERVAL_SEC: ${WATTETHERIA_AUTONOMY_INTERVAL_SEC:-30}
42
- OPENCLAW_API_KEY: ${OPENCLAW_API_KEY:-}
43
42
  volumes:
44
43
  - ${WATTETHERIA_HOST_STATE_DIR:-./data/wattetheria}:/var/lib/wattetheria
45
44
  - ${WATTSWARM_HOST_STATE_DIR:-./data/wattswarm}:/var/lib/wattswarm:ro
@@ -105,6 +104,10 @@ services:
105
104
  WATTSWARM_P2P_ENABLED: ${WATTSWARM_P2P_ENABLED:-true}
106
105
  WATTSWARM_P2P_MDNS: ${WATTSWARM_P2P_MDNS:-true}
107
106
  WATTSWARM_P2P_PORT: ${WATTSWARM_P2P_PORT:-4001}
107
+ WATTSWARM_NEARBY_DISCOVERY_ENABLED: ${WATTSWARM_NEARBY_DISCOVERY_ENABLED:-true}
108
+ WATTSWARM_NEARBY_DISCOVERY_RADIUS_KM: ${WATTSWARM_NEARBY_DISCOVERY_RADIUS_KM:-1000}
109
+ WATTSWARM_NEARBY_DISCOVERY_INTERVAL_MS: ${WATTSWARM_NEARBY_DISCOVERY_INTERVAL_MS:-30000}
110
+ WATTSWARM_NEARBY_DISCOVERY_TTL_MS: ${WATTSWARM_NEARBY_DISCOVERY_TTL_MS:-300000}
108
111
  WATTSWARM_BOOTSTRAP_EXECUTOR_NAME: rt
109
112
  WATTSWARM_BOOTSTRAP_EXECUTOR_URL: http://wattswarm-runtime:8787
110
113
  WATTSWARM_UDP_ANNOUNCE_ENABLED: ${WATTSWARM_UDP_ANNOUNCE_ENABLED:-false}
package/lib/cli.js CHANGED
@@ -49,13 +49,16 @@ const DEFAULT_ENV_ENTRIES = [
49
49
  ["WATTETHERIA_SERVICENET_BASE_URL", ""],
50
50
  ["WATTETHERIA_AUTONOMY_ENABLED", "false"],
51
51
  ["WATTETHERIA_AUTONOMY_INTERVAL_SEC", "30"],
52
- ["OPENCLAW_API_KEY", ""],
53
52
  ["WATTSWARM_PG_DB", "wattswarm"],
54
53
  ["WATTSWARM_PG_USER", "postgres"],
55
54
  ["WATTSWARM_PG_PASSWORD", "replace-with-strong-password"],
56
55
  ["WATTSWARM_P2P_ENABLED", "true"],
57
56
  ["WATTSWARM_P2P_MDNS", "true"],
58
57
  ["WATTSWARM_P2P_PORT", "4001"],
58
+ ["WATTSWARM_NEARBY_DISCOVERY_ENABLED", "true"],
59
+ ["WATTSWARM_NEARBY_DISCOVERY_RADIUS_KM", "1000"],
60
+ ["WATTSWARM_NEARBY_DISCOVERY_INTERVAL_MS", "30000"],
61
+ ["WATTSWARM_NEARBY_DISCOVERY_TTL_MS", "300000"],
59
62
  ["WATTSWARM_WORKER_CONCURRENCY", "16"],
60
63
  ["WATTSWARM_WORKER_POLL_MS", "250"],
61
64
  ["WATTSWARM_WORKER_LEASE_MS", "30000"],
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "wattetheria",
3
- "version": "0.1.10",
3
+ "version": "0.2.0",
4
4
  "description": "Wattetheria deployment CLI",
5
5
  "license": "Apache-2.0",
6
6
  "type": "commonjs",