@marcusrbrown/infra 0.9.15 → 0.9.16

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.
Files changed (2) hide show
  1. package/README.md +83 -14
  2. package/package.json +1 -1
package/README.md CHANGED
@@ -1,5 +1,7 @@
1
1
  # @marcusrbrown/infra
2
2
 
3
+ [![npm version](https://img.shields.io/npm/v/@marcusrbrown/infra?style=flat-square)](https://www.npmjs.com/package/@marcusrbrown/infra) [![npm downloads](https://img.shields.io/npm/dm/@marcusrbrown/infra?style=flat-square)](https://www.npmjs.com/package/@marcusrbrown/infra)
4
+
3
5
  Infrastructure management CLI — deploy automation, health checks, and MCP bridge.
4
6
 
5
7
  > **Requires [Bun](https://bun.sh)** — this package ships TypeScript source with a `#!/usr/bin/env bun` shebang.
@@ -18,39 +20,106 @@ bunx @marcusrbrown/infra --help
18
20
 
19
21
  ## Commands
20
22
 
21
- ### `infra keeweb status`
23
+ ### KeeWeb
22
24
 
23
- Operational health check for the KeeWeb deployment:
25
+ Manage the KeeWeb static-site deployment on `box.heatvision.co`.
24
26
 
25
- - HTTP reachability (status code + response time)
26
- - Last successful deploy timestamp via GitHub Actions
27
- - SHA-256 content hash comparison (live site vs local `dist/`)
27
+ | Subcommand | Description |
28
+ | --------------- | ------------------------------------------------------------------------------- |
29
+ | `keeweb status` | HTTP reachability, last deploy timestamp, SHA-256 content hash vs local `dist/` |
30
+ | `keeweb deploy` | Trigger deployment (GitHub Actions by default; `--local` for direct SSH) |
31
+ | `keeweb open` | Open the KeeWeb site in the default browser |
28
32
 
29
33
  ```bash
30
34
  bunx @marcusrbrown/infra keeweb status
35
+ bunx @marcusrbrown/infra keeweb deploy # GitHub Actions workflow
36
+ bunx @marcusrbrown/infra keeweb deploy --local # deploy directly via SSH
37
+ bunx @marcusrbrown/infra keeweb deploy --local --nginx # include nginx config
38
+ bunx @marcusrbrown/infra keeweb open
31
39
  ```
32
40
 
33
- ### `infra keeweb deploy`
41
+ ### CLIProxyAPI
42
+
43
+ Manage the CLIProxyAPI proxy on `cliproxy.fro.bot`.
34
44
 
35
- Trigger a KeeWeb deployment:
45
+ | Subcommand | Description |
46
+ | ----------------- | ------------------------------------------------------------------------ |
47
+ | `cliproxy status` | HTTP reachability, usage stats, version |
48
+ | `cliproxy deploy` | Trigger deployment (GitHub Actions by default; `--local` for direct SSH) |
49
+ | `cliproxy config` | Get or set proxy configuration via the management API |
50
+ | `cliproxy keys` | List, add, or remove API keys via the management API |
51
+ | `cliproxy login` | Authenticate a provider (claude or codex) via SSH |
52
+ | `cliproxy open` | Open an interactive TUI via SSH |
53
+ | `cliproxy setup` | Interactive wizard to onboard a repo to CLIProxyAPI |
36
54
 
37
55
  ```bash
38
- bunx @marcusrbrown/infra keeweb deploy # GitHub Actions workflow
39
- bunx @marcusrbrown/infra keeweb deploy --dry-run # preview without executing
40
- bunx @marcusrbrown/infra keeweb deploy --local # deploy directly via SSH
41
- bunx @marcusrbrown/infra keeweb deploy --local --nginx # include nginx config
56
+ bunx @marcusrbrown/infra cliproxy status
57
+ bunx @marcusrbrown/infra cliproxy deploy
58
+ bunx @marcusrbrown/infra cliproxy config get
59
+ bunx @marcusrbrown/infra cliproxy config set
60
+ bunx @marcusrbrown/infra cliproxy keys list
61
+ bunx @marcusrbrown/infra cliproxy keys add
62
+ bunx @marcusrbrown/infra cliproxy keys remove
63
+ bunx @marcusrbrown/infra cliproxy login claude
64
+ bunx @marcusrbrown/infra cliproxy login codex
65
+ bunx @marcusrbrown/infra cliproxy open
66
+ bunx @marcusrbrown/infra cliproxy setup
67
+ bunx @marcusrbrown/infra cliproxy setup --repo OWNER/REPO --harness opencode
68
+ ```
69
+
70
+ ### Gateway
71
+
72
+ Manage the Fro Bot gateway on `gateway.fro.bot`.
73
+
74
+ | Subcommand | Description |
75
+ | ----------------- | ------------------------------------------------------------------------ |
76
+ | `gateway status` | SSH health check, `docker compose ps` service states |
77
+ | `gateway deploy` | Trigger deployment (GitHub Actions by default; `--local` for direct SSH) |
78
+ | `gateway logs` | Stream gateway service logs (`--tail N` to limit lines) |
79
+ | `gateway backup` | Pull mitmproxy CA cert + key as a tarball (`--include-ca`) |
80
+ | `gateway restore` | Restore CA from a tarball (`--include-ca --input FILE`) |
81
+
82
+ ```bash
83
+ bunx @marcusrbrown/infra gateway status
84
+ bunx @marcusrbrown/infra gateway deploy
85
+ bunx @marcusrbrown/infra gateway logs gateway --tail 100
86
+ bunx @marcusrbrown/infra gateway backup --include-ca
87
+ bunx @marcusrbrown/infra gateway restore --include-ca --input backup.tar.gz
88
+ ```
89
+
90
+ ### Umami
91
+
92
+ Manage the Umami analytics deployment on `metrics.fro.bot`.
93
+
94
+ | Subcommand | Description |
95
+ | -------------- | ------------------------------------------------------------------------ |
96
+ | `umami status` | SSH health check, `docker compose ps` service states |
97
+ | `umami deploy` | Trigger deployment (GitHub Actions by default; `--local` for direct SSH) |
98
+ | `umami logs` | Stream umami service logs (`--tail N` to limit lines) |
99
+
100
+ ```bash
101
+ bunx @marcusrbrown/infra umami status
102
+ bunx @marcusrbrown/infra umami deploy
103
+ bunx @marcusrbrown/infra umami logs --tail 50
42
104
  ```
43
105
 
44
- Local deploy requires `ssh-agent` running with the deploy key loaded.
106
+ ### Unified Status
107
+
108
+ ```bash
109
+ bunx @marcusrbrown/infra status # all deployments
110
+ bunx @marcusrbrown/infra status --json # machine-readable output
111
+ ```
45
112
 
46
- ### `infra mcp`
113
+ ### MCP Bridge
47
114
 
48
- Start a stdio MCP server exposing all commands as tools:
115
+ Exposes read-only status commands as MCP tools over stdio.
49
116
 
50
117
  ```bash
51
118
  bunx @marcusrbrown/infra mcp
52
119
  ```
53
120
 
121
+ See `packages/cli/AGENTS.md` for the MCP allowlist and tool-exposure rules.
122
+
54
123
  ## License
55
124
 
56
125
  MIT
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@marcusrbrown/infra",
3
- "version": "0.9.15",
3
+ "version": "0.9.16",
4
4
  "description": "Infrastructure management CLI — deploy automation, health checks, and MCP bridge",
5
5
  "keywords": [
6
6
  "infra",