procsi 0.6.4 → 0.7.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.
Files changed (52) hide show
  1. package/README.md +62 -29
  2. package/dist/cli/commands/browser.d.ts +3 -0
  3. package/dist/cli/commands/browser.d.ts.map +1 -0
  4. package/dist/cli/commands/browser.js +125 -0
  5. package/dist/cli/commands/browser.js.map +1 -0
  6. package/dist/cli/commands/helpers.d.ts +11 -0
  7. package/dist/cli/commands/helpers.d.ts.map +1 -1
  8. package/dist/cli/commands/helpers.js +30 -2
  9. package/dist/cli/commands/helpers.js.map +1 -1
  10. package/dist/cli/commands/on.js +3 -3
  11. package/dist/cli/commands/on.js.map +1 -1
  12. package/dist/cli/commands/project.js +6 -3
  13. package/dist/cli/commands/project.js.map +1 -1
  14. package/dist/cli/commands/tui.d.ts.map +1 -1
  15. package/dist/cli/commands/tui.js +7 -2
  16. package/dist/cli/commands/tui.js.map +1 -1
  17. package/dist/cli/index.js +7 -3
  18. package/dist/cli/index.js.map +1 -1
  19. package/dist/cli/tui/App.d.ts +4 -0
  20. package/dist/cli/tui/App.d.ts.map +1 -1
  21. package/dist/cli/tui/App.js +51 -5
  22. package/dist/cli/tui/App.js.map +1 -1
  23. package/dist/cli/tui/components/AccordionPanel.d.ts +6 -0
  24. package/dist/cli/tui/components/AccordionPanel.d.ts.map +1 -1
  25. package/dist/cli/tui/components/AccordionPanel.js +1 -1
  26. package/dist/cli/tui/components/AccordionPanel.js.map +1 -1
  27. package/dist/cli/tui/components/HelpModal.d.ts.map +1 -1
  28. package/dist/cli/tui/components/HelpModal.js +3 -0
  29. package/dist/cli/tui/components/HelpModal.js.map +1 -1
  30. package/dist/cli/tui/components/StatusBar.d.ts.map +1 -1
  31. package/dist/cli/tui/components/StatusBar.js +2 -0
  32. package/dist/cli/tui/components/StatusBar.js.map +1 -1
  33. package/dist/daemon/index.js +6 -1
  34. package/dist/daemon/index.js.map +1 -1
  35. package/dist/shared/browser.d.ts +72 -0
  36. package/dist/shared/browser.d.ts.map +1 -0
  37. package/dist/shared/browser.js +363 -0
  38. package/dist/shared/browser.js.map +1 -0
  39. package/dist/shared/config.d.ts.map +1 -1
  40. package/dist/shared/config.js +2 -1
  41. package/dist/shared/config.js.map +1 -1
  42. package/dist/shared/daemon.d.ts.map +1 -1
  43. package/dist/shared/daemon.js +3 -1
  44. package/dist/shared/daemon.js.map +1 -1
  45. package/dist/shared/logger.d.ts.map +1 -1
  46. package/dist/shared/logger.js +2 -1
  47. package/dist/shared/logger.js.map +1 -1
  48. package/dist/shared/project.d.ts +9 -0
  49. package/dist/shared/project.d.ts.map +1 -1
  50. package/dist/shared/project.js +16 -2
  51. package/dist/shared/project.js.map +1 -1
  52. package/package.json +1 -1
package/README.md CHANGED
@@ -4,15 +4,15 @@
4
4
  [![CI](https://github.com/mtford90/procsi/actions/workflows/ci.yml/badge.svg)](https://github.com/mtford90/procsi/actions/workflows/ci.yml)
5
5
  [![License: AGPL v3](https://img.shields.io/badge/License-AGPL_v3-blue.svg)](https://www.gnu.org/licenses/agpl-3.0)
6
6
 
7
- Procsi is a terminal-based, project-isolated HTTP proxy with a powerful CLI & MCP server. Quickly intercept, inspect & rewrite HTTP traffic from the comfort of your terminal or favourite AI agent.
7
+ Procsi is a terminal-based, project-scoped HTTP proxy with a powerful CLI & MCP server. Quickly intercept, inspect & rewrite HTTP traffic from the comfort of your terminal or favourite AI agent.
8
8
 
9
9
  ![procsi demo](demo.gif)
10
10
 
11
11
  ## Feature Highlights
12
12
 
13
- - **Project isolation** — each project gets its own `.procsi/` directory with a separate daemon, database, CA cert and interceptors
14
- - **MCP server** — AI agents get full access to your captured traffic and can write interceptor files for you. Search, filter, inspect, mock — all via tool calls.
15
- - **Interceptors** — mock, modify or observe traffic with `.ts` files. Match on anything, query past traffic from within handlers, compose complex scenarios.
13
+ - **Project-scoped** — each project gets its own `.procsi/` directory with a separate daemon, database, CA cert and interceptors
14
+ - **MCP server** — AI agents get full access to your captured traffic and can search, filter, inspect, mock — all via tool calls.
15
+ - **Interceptors** — mock, modify or observe traffic by writing typescript. Agent can do this over MCP meaning you can express complex scenarios in natural language!
16
16
 
17
17
  ## Quick Start
18
18
 
@@ -29,7 +29,32 @@ curl https://api.example.com/users
29
29
  procsi tui
30
30
  ```
31
31
 
32
- ## Project Isolation
32
+ ## Browser Interception
33
+
34
+ Launch any browser pre-configured to route through procsi — no manual proxy setup, no certificate warnings:
35
+
36
+ ```bash
37
+ # Auto-detect and launch your default browser
38
+ procsi browser
39
+
40
+ # Open a specific URL
41
+ procsi browser https://example.com
42
+
43
+ # Choose a specific browser
44
+ procsi browser --browser firefox
45
+ procsi browser --browser brave
46
+ ```
47
+
48
+ Each browser session gets its own isolated profile and is automatically attributed in the TUI (e.g. `source: chrome`). Close the browser or press `Ctrl+C` to stop — the temp profile is cleaned up automatically.
49
+
50
+ **Supported browsers:**
51
+
52
+ | Engine | Browsers |
53
+ | -------- | ------------------------------------------- |
54
+ | Chromium | Chrome, Brave, Edge, Vivaldi, Arc, Chromium |
55
+ | Firefox | Firefox, Zen Browser, LibreWolf |
56
+
57
+ ## Project Scoping
33
58
 
34
59
  procsi doesn't use a global system proxy. Each project gets its own `.procsi/` directory in the project root (detected by `.git` or an existing `.procsi/`):
35
60
 
@@ -48,6 +73,14 @@ your-project/
48
73
 
49
74
  Separate daemon, database, certificates etc. You can run procsi in multiple projects at the same time without them interfering with each other.
50
75
 
76
+ For non-project contexts or custom setups, use `--config` to point directly at a data directory (no `.procsi` appended):
77
+
78
+ ```bash
79
+ procsi --config /tmp/my-procsi-data on
80
+ ```
81
+
82
+ See [CLI Reference](docs/cli-reference.md) for the full resolution order (`--config` > `--dir` > auto-detect).
83
+
51
84
  ## Use cases
52
85
 
53
86
  - AI analysis
@@ -192,36 +225,36 @@ Anything that respects `HTTP_PROXY` works. procsi sets the right CA cert env var
192
225
 
193
226
  **Works automatically (env vars only):**
194
227
 
195
- | Client | Support |
196
- | ---------------------------- | -------------------------- |
197
- | curl | Automatic |
198
- | wget | Automatic |
199
- | Go (`net/http`) | Automatic |
200
- | Rust (reqwest) | Automatic |
201
- | .NET (`HttpClient`) | Automatic |
202
- | Deno | Automatic (`DENO_CERT`) |
203
- | Bun | Automatic (`SSL_CERT_FILE`)|
204
- | Git | Automatic (`GIT_SSL_CAINFO`)|
205
- | AWS CLI | Automatic (`AWS_CA_BUNDLE`)|
206
- | Cargo | Automatic (`CARGO_HTTP_CAINFO`)|
228
+ | Client | Support |
229
+ | ------------------- | ------------------------------- |
230
+ | curl | Automatic |
231
+ | wget | Automatic |
232
+ | Go (`net/http`) | Automatic |
233
+ | Rust (reqwest) | Automatic |
234
+ | .NET (`HttpClient`) | Automatic |
235
+ | Deno | Automatic (`DENO_CERT`) |
236
+ | Bun | Automatic (`SSL_CERT_FILE`) |
237
+ | Git | Automatic (`GIT_SSL_CAINFO`) |
238
+ | AWS CLI | Automatic (`AWS_CA_BUNDLE`) |
239
+ | Cargo | Automatic (`CARGO_HTTP_CAINFO`) |
207
240
 
208
241
  **Works with procsi overrides (injection scripts):**
209
242
 
210
- | Client | Mechanism |
211
- | ---------------------------- | ------------------------------------------ |
212
- | Node.js (fetch, axios, etc.) | `NODE_OPTIONS --require` preload script |
213
- | Python (requests, httplib2) | `PYTHONPATH` sitecustomize.py |
214
- | Ruby (Net::HTTP, gems) | `RUBYOPT -r` OpenSSL CA patch |
215
- | PHP (curl, streams) | `PHP_INI_SCAN_DIR` custom INI |
243
+ | Client | Mechanism |
244
+ | ---------------------------- | --------------------------------------- |
245
+ | Node.js (fetch, axios, etc.) | `NODE_OPTIONS --require` preload script |
246
+ | Python (requests, httplib2) | `PYTHONPATH` sitecustomize.py |
247
+ | Ruby (Net::HTTP, gems) | `RUBYOPT -r` OpenSSL CA patch |
248
+ | PHP (curl, streams) | `PHP_INI_SCAN_DIR` custom INI |
216
249
 
217
250
  **Not currently supported (needs system-level config):**
218
251
 
219
- | Runtime | Reason |
220
- | ----------------- | ------------------------------------------------ |
221
- | Java/JVM | Needs `-javaagent` or JVM trust store config |
222
- | Swift | Uses macOS Keychain only |
223
- | Dart/Flutter | Requires code changes for proxy |
224
- | Elixir/Erlang | Requires code changes for proxy |
252
+ | Runtime | Reason |
253
+ | ------------- | -------------------------------------------- |
254
+ | Java/JVM | Needs `-javaagent` or JVM trust store config |
255
+ | Swift | Uses macOS Keychain only |
256
+ | Dart/Flutter | Requires code changes for proxy |
257
+ | Elixir/Erlang | Requires code changes for proxy |
225
258
 
226
259
  ## TUI
227
260
 
@@ -0,0 +1,3 @@
1
+ import { Command } from "commander";
2
+ export declare const browserCommand: Command;
3
+ //# sourceMappingURL=browser.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"browser.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/browser.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAQpC,eAAO,MAAM,cAAc,SA8HxB,CAAC"}
@@ -0,0 +1,125 @@
1
+ import * as fs from "node:fs";
2
+ import * as path from "node:path";
3
+ import * as crypto from "node:crypto";
4
+ import { Command } from "commander";
5
+ import { ensureProcsiDir, getProcsiPaths } from "../../shared/project.js";
6
+ import { startDaemon } from "../../shared/daemon.js";
7
+ import { ControlClient } from "../../shared/control-client.js";
8
+ import { parseVerbosity } from "../../shared/logger.js";
9
+ import { getErrorMessage, getGlobalOptions, resolveProjectContext } from "./helpers.js";
10
+ import { detectBrowsers, findBrowser, launchBrowser } from "../../shared/browser.js";
11
+ export const browserCommand = new Command("browser")
12
+ .description("Launch a browser pre-configured to use the procsi proxy")
13
+ .argument("[url]", "URL to open in the browser")
14
+ .option("-b, --browser <name>", "Browser to use (chrome, firefox). Auto-detected if omitted.")
15
+ .option("-l, --label <label>", "Session label (defaults to browser name)")
16
+ .action(async (url, options, command) => {
17
+ const globalOpts = getGlobalOptions(command);
18
+ const verbosity = globalOpts.verbose;
19
+ const logLevel = parseVerbosity(verbosity);
20
+ // Detect available browsers
21
+ const browsers = detectBrowsers();
22
+ if (browsers.length === 0) {
23
+ console.error("No supported browsers found (Chrome, Chromium, or Firefox).");
24
+ process.exit(1);
25
+ }
26
+ // Find the requested browser
27
+ const browser = findBrowser(browsers, options.browser);
28
+ if (!browser) {
29
+ const available = browsers.map((b) => `${b.name} (${b.type})`).join(", ");
30
+ console.error(`Browser "${options.browser}" not found. Available: ${available}`);
31
+ process.exit(1);
32
+ }
33
+ // Ensure project root and daemon
34
+ const projectRoot = resolveProjectContext(globalOpts);
35
+ ensureProcsiDir(projectRoot);
36
+ const paths = getProcsiPaths(projectRoot);
37
+ let proxyPort;
38
+ try {
39
+ proxyPort = await startDaemon(projectRoot, {
40
+ logLevel,
41
+ onVersionMismatch: (running, cli) => {
42
+ console.log(`Restarting daemon (version mismatch: ${running} -> ${cli})`);
43
+ },
44
+ });
45
+ }
46
+ catch (err) {
47
+ console.error(`Failed to start daemon: ${getErrorMessage(err)}`);
48
+ process.exit(1);
49
+ }
50
+ // Register a session for the browser
51
+ const label = options.label ?? browser.name;
52
+ const client = new ControlClient(paths.controlSocketFile);
53
+ let sessionId;
54
+ let sessionToken;
55
+ try {
56
+ const session = await client.registerSession(label, undefined, browser.type);
57
+ sessionId = session.id;
58
+ sessionToken = session.token;
59
+ }
60
+ catch (err) {
61
+ client.close();
62
+ console.error(`Failed to register session: ${getErrorMessage(err)}`);
63
+ process.exit(1);
64
+ }
65
+ finally {
66
+ client.close();
67
+ }
68
+ // Create a temporary profile directory
69
+ const profileId = crypto.randomUUID();
70
+ const profileDir = path.join(paths.browserProfilesDir, profileId);
71
+ fs.mkdirSync(profileDir, { recursive: true });
72
+ // Launch the browser
73
+ let child;
74
+ try {
75
+ child = launchBrowser(browser, {
76
+ proxyPort,
77
+ caCertPath: paths.caCertFile,
78
+ sessionId,
79
+ sessionToken,
80
+ profileDir,
81
+ url,
82
+ });
83
+ }
84
+ catch (err) {
85
+ // Clean up profile on launch failure
86
+ fs.rmSync(profileDir, { recursive: true, force: true });
87
+ console.error(`Failed to launch browser: ${getErrorMessage(err)}`);
88
+ process.exit(1);
89
+ }
90
+ const proxyUrl = `http://127.0.0.1:${proxyPort}`;
91
+ console.log(`Browser: ${browser.name}`);
92
+ console.log(`Proxy: ${proxyUrl}`);
93
+ console.log(`Session: ${sessionId} (source: ${browser.type})`);
94
+ console.log("");
95
+ console.log("Press Ctrl+C to stop, or close the browser window.");
96
+ // Wait for browser exit or signal
97
+ const cleanup = () => {
98
+ try {
99
+ fs.rmSync(profileDir, { recursive: true, force: true });
100
+ }
101
+ catch {
102
+ // Best-effort cleanup
103
+ }
104
+ };
105
+ child.on("exit", () => {
106
+ cleanup();
107
+ process.exit(0);
108
+ });
109
+ const handleSignal = () => {
110
+ // Kill the browser process group
111
+ if (child.pid) {
112
+ try {
113
+ process.kill(-child.pid, "SIGTERM");
114
+ }
115
+ catch {
116
+ // Process may have already exited
117
+ }
118
+ }
119
+ cleanup();
120
+ process.exit(0);
121
+ };
122
+ process.on("SIGINT", handleSignal);
123
+ process.on("SIGTERM", handleSignal);
124
+ });
125
+ //# sourceMappingURL=browser.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"browser.js","sourceRoot":"","sources":["../../../src/cli/commands/browser.ts"],"names":[],"mappings":"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"}
@@ -3,15 +3,26 @@ import { ControlClient } from "../../shared/control-client.js";
3
3
  export interface GlobalOptions {
4
4
  verbose: number;
5
5
  dir?: string;
6
+ config?: string;
6
7
  }
7
8
  /**
8
9
  * Validate and extract global CLI options from a Commander command.
10
+ * CLI flags take precedence over environment variables.
9
11
  */
10
12
  export declare function getGlobalOptions(command: Command): GlobalOptions;
11
13
  /**
12
14
  * Find the project root or exit with a friendly error message.
15
+ * When a config override is active, returns the override path as a
16
+ * stand-in project root (getProcsiDir will ignore it).
13
17
  */
14
18
  export declare function requireProjectRoot(override?: string): string;
19
+ /**
20
+ * Set the config override from global options and return an appropriate
21
+ * project root. When --config is provided, the override is set and the
22
+ * resolved config path is returned (getProcsiDir will use the override).
23
+ * Otherwise falls back to findOrCreateProjectRoot with --dir.
24
+ */
25
+ export declare function resolveProjectContext(globalOpts: GlobalOptions): string;
15
26
  /**
16
27
  * Extract a human-readable message from an unknown error value.
17
28
  */
@@ -1 +1 @@
1
- {"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/helpers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAGpC,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAE/D,MAAM,WAAW,aAAa;IAC5B,OAAO,EAAE,MAAM,CAAC;IAChB,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,OAAO,GAAG,aAAa,CAMhE;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,CAW5D;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM,CAEpD;AAED;;;GAGG;AACH,wBAAsB,eAAe,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC;IAC/D,MAAM,EAAE,aAAa,CAAC;IACtB,WAAW,EAAE,MAAM,CAAC;CACrB,CAAC,CAaD"}
1
+ {"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/helpers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAUpC,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAE/D,MAAM,WAAW,aAAa;IAC5B,OAAO,EAAE,MAAM,CAAC;IAChB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,OAAO,GAAG,aAAa,CAUhE;AAED;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,CAgB5D;AAED;;;;;GAKG;AACH,wBAAgB,qBAAqB,CAAC,UAAU,EAAE,aAAa,GAAG,MAAM,CAOvE;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM,CAEpD;AAED;;;GAGG;AACH,wBAAsB,eAAe,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC;IAC/D,MAAM,EAAE,aAAa,CAAC;IACtB,WAAW,EAAE,MAAM,CAAC;CACrB,CAAC,CAmBD"}
@@ -1,20 +1,30 @@
1
- import { findProjectRoot, getProcsiPaths } from "../../shared/project.js";
1
+ import { findProjectRoot, findOrCreateProjectRoot, getProcsiPaths, setConfigOverride, getConfigOverride, resolveOverridePath, } from "../../shared/project.js";
2
2
  import { isDaemonRunning } from "../../shared/daemon.js";
3
3
  import { ControlClient } from "../../shared/control-client.js";
4
4
  /**
5
5
  * Validate and extract global CLI options from a Commander command.
6
+ * CLI flags take precedence over environment variables.
6
7
  */
7
8
  export function getGlobalOptions(command) {
8
9
  const raw = command.optsWithGlobals();
9
10
  return {
10
11
  verbose: typeof raw["verbose"] === "number" ? raw["verbose"] : 0,
11
- dir: typeof raw["dir"] === "string" ? raw["dir"] : undefined,
12
+ dir: typeof raw["dir"] === "string" ? raw["dir"] : (process.env["PROCSI_DIR"] ?? undefined),
13
+ config: typeof raw["config"] === "string"
14
+ ? raw["config"]
15
+ : (process.env["PROCSI_CONFIG"] ?? undefined),
12
16
  };
13
17
  }
14
18
  /**
15
19
  * Find the project root or exit with a friendly error message.
20
+ * When a config override is active, returns the override path as a
21
+ * stand-in project root (getProcsiDir will ignore it).
16
22
  */
17
23
  export function requireProjectRoot(override) {
24
+ const configOverride = getConfigOverride();
25
+ if (configOverride) {
26
+ return configOverride;
27
+ }
18
28
  const projectRoot = findProjectRoot(undefined, override);
19
29
  if (!projectRoot) {
20
30
  if (override) {
@@ -27,6 +37,20 @@ export function requireProjectRoot(override) {
27
37
  }
28
38
  return projectRoot;
29
39
  }
40
+ /**
41
+ * Set the config override from global options and return an appropriate
42
+ * project root. When --config is provided, the override is set and the
43
+ * resolved config path is returned (getProcsiDir will use the override).
44
+ * Otherwise falls back to findOrCreateProjectRoot with --dir.
45
+ */
46
+ export function resolveProjectContext(globalOpts) {
47
+ if (globalOpts.config) {
48
+ const resolved = resolveOverridePath(globalOpts.config);
49
+ setConfigOverride(resolved);
50
+ return resolved;
51
+ }
52
+ return findOrCreateProjectRoot(undefined, globalOpts.dir);
53
+ }
30
54
  /**
31
55
  * Extract a human-readable message from an unknown error value.
32
56
  */
@@ -39,6 +63,10 @@ export function getErrorMessage(err) {
39
63
  */
40
64
  export async function connectToDaemon(command) {
41
65
  const globalOpts = getGlobalOptions(command);
66
+ // Set config override before any path resolution
67
+ if (globalOpts.config) {
68
+ setConfigOverride(resolveOverridePath(globalOpts.config));
69
+ }
42
70
  const projectRoot = requireProjectRoot(globalOpts.dir);
43
71
  const paths = getProcsiPaths(projectRoot);
44
72
  const running = await isDaemonRunning(projectRoot);
@@ -1 +1 @@
1
- {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../../src/cli/commands/helpers.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAC1E,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAO/D;;GAEG;AACH,MAAM,UAAU,gBAAgB,CAAC,OAAgB;IAC/C,MAAM,GAAG,GAAG,OAAO,CAAC,eAAe,EAA6B,CAAC;IACjE,OAAO;QACL,OAAO,EAAE,OAAO,GAAG,CAAC,SAAS,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;QAChE,GAAG,EAAE,OAAO,GAAG,CAAC,KAAK,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS;KAC7D,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,kBAAkB,CAAC,QAAiB;IAClD,MAAM,WAAW,GAAG,eAAe,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;IACzD,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,IAAI,QAAQ,EAAE,CAAC;YACb,OAAO,CAAC,KAAK,CAAC,+BAA+B,QAAQ,wBAAwB,CAAC,CAAC;QACjF,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,KAAK,CAAC,uDAAuD,CAAC,CAAC;QACzE,CAAC;QACD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IACD,OAAO,WAAW,CAAC;AACrB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,eAAe,CAAC,GAAY;IAC1C,OAAO,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,CAAC;AAC9D,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,OAAgB;IAIpD,MAAM,UAAU,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC;IAC7C,MAAM,WAAW,GAAG,kBAAkB,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;IACvD,MAAM,KAAK,GAAG,cAAc,CAAC,WAAW,CAAC,CAAC;IAE1C,MAAM,OAAO,GAAG,MAAM,eAAe,CAAC,WAAW,CAAC,CAAC;IACnD,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO,CAAC,KAAK,CAAC,iDAAiD,CAAC,CAAC;QACjE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,MAAM,MAAM,GAAG,IAAI,aAAa,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;IAC1D,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,CAAC;AACjC,CAAC"}
1
+ {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../../src/cli/commands/helpers.ts"],"names":[],"mappings":"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"}
@@ -1,10 +1,10 @@
1
1
  import * as path from "node:path";
2
2
  import { Command } from "commander";
3
- import { findOrCreateProjectRoot, ensureProcsiDir, getProcsiPaths } from "../../shared/project.js";
3
+ import { ensureProcsiDir, getProcsiPaths } from "../../shared/project.js";
4
4
  import { startDaemon } from "../../shared/daemon.js";
5
5
  import { ControlClient } from "../../shared/control-client.js";
6
6
  import { parseVerbosity } from "../../shared/logger.js";
7
- import { getErrorMessage, getGlobalOptions } from "./helpers.js";
7
+ import { getErrorMessage, getGlobalOptions, resolveProjectContext } from "./helpers.js";
8
8
  import { writeNodePreloadScript, getNodeEnvVars } from "../../overrides/node.js";
9
9
  import { writePythonOverride } from "../../overrides/python.js";
10
10
  import { writeRubyOverride } from "../../overrides/ruby.js";
@@ -163,7 +163,7 @@ export const onCommand = new Command("on")
163
163
  const verbosity = globalOpts.verbose;
164
164
  const logLevel = parseVerbosity(verbosity);
165
165
  // Find project root (auto-creates .procsi if needed)
166
- const projectRoot = findOrCreateProjectRoot(undefined, globalOpts.dir);
166
+ const projectRoot = resolveProjectContext(globalOpts);
167
167
  ensureProcsiDir(projectRoot);
168
168
  const paths = getProcsiPaths(projectRoot);
169
169
  try {
@@ -1 +1 @@
1
- {"version":3,"file":"on.js","sourceRoot":"","sources":["../../../src/cli/commands/on.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"on.js","sourceRoot":"","sources":["../../../src/cli/commands/on.ts"],"names":[],"mappings":"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"}
@@ -1,13 +1,16 @@
1
1
  import { Command } from "commander";
2
- import { ensureProcsiDir, findOrCreateProjectRoot, getProcsiDir } from "../../shared/project.js";
3
- import { getGlobalOptions } from "./helpers.js";
2
+ import { ensureProcsiDir, getProcsiDir } from "../../shared/project.js";
3
+ import { getGlobalOptions, resolveProjectContext } from "./helpers.js";
4
4
  export const projectCommand = new Command("project").description("Manage procsi project configuration");
5
5
  projectCommand
6
6
  .command("init")
7
7
  .description("Initialise procsi in the current directory")
8
8
  .action((_, command) => {
9
9
  const globalOpts = getGlobalOptions(command);
10
- const projectRoot = findOrCreateProjectRoot(undefined, globalOpts.dir ?? process.cwd());
10
+ if (!globalOpts.dir && !globalOpts.config) {
11
+ globalOpts.dir = process.cwd();
12
+ }
13
+ const projectRoot = resolveProjectContext(globalOpts);
11
14
  const procsiDir = getProcsiDir(projectRoot);
12
15
  ensureProcsiDir(projectRoot);
13
16
  console.log(`Created ${procsiDir}`);
@@ -1 +1 @@
1
- {"version":3,"file":"project.js","sourceRoot":"","sources":["../../../src/cli/commands/project.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,eAAe,EAAE,uBAAuB,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACjG,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAEhD,MAAM,CAAC,MAAM,cAAc,GAAG,IAAI,OAAO,CAAC,SAAS,CAAC,CAAC,WAAW,CAC9D,qCAAqC,CACtC,CAAC;AAEF,cAAc;KACX,OAAO,CAAC,MAAM,CAAC;KACf,WAAW,CAAC,4CAA4C,CAAC;KACzD,MAAM,CAAC,CAAC,CAAC,EAAE,OAAgB,EAAE,EAAE;IAC9B,MAAM,UAAU,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC;IAC7C,MAAM,WAAW,GAAG,uBAAuB,CAAC,SAAS,EAAE,UAAU,CAAC,GAAG,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;IACxF,MAAM,SAAS,GAAG,YAAY,CAAC,WAAW,CAAC,CAAC;IAE5C,eAAe,CAAC,WAAW,CAAC,CAAC;IAC7B,OAAO,CAAC,GAAG,CAAC,WAAW,SAAS,EAAE,CAAC,CAAC;AACtC,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"project.js","sourceRoot":"","sources":["../../../src/cli/commands/project.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACxE,OAAO,EAAE,gBAAgB,EAAE,qBAAqB,EAAE,MAAM,cAAc,CAAC;AAEvE,MAAM,CAAC,MAAM,cAAc,GAAG,IAAI,OAAO,CAAC,SAAS,CAAC,CAAC,WAAW,CAC9D,qCAAqC,CACtC,CAAC;AAEF,cAAc;KACX,OAAO,CAAC,MAAM,CAAC;KACf,WAAW,CAAC,4CAA4C,CAAC;KACzD,MAAM,CAAC,CAAC,CAAC,EAAE,OAAgB,EAAE,EAAE;IAC9B,MAAM,UAAU,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC;IAC7C,IAAI,CAAC,UAAU,CAAC,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC;QAC1C,UAAU,CAAC,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IACjC,CAAC;IACD,MAAM,WAAW,GAAG,qBAAqB,CAAC,UAAU,CAAC,CAAC;IACtD,MAAM,SAAS,GAAG,YAAY,CAAC,WAAW,CAAC,CAAC;IAE5C,eAAe,CAAC,WAAW,CAAC,CAAC;IAC7B,OAAO,CAAC,GAAG,CAAC,WAAW,SAAS,EAAE,CAAC,CAAC;AACtC,CAAC,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"tui.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/tui.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAQpC,eAAO,MAAM,UAAU,SAiCnB,CAAC"}
1
+ {"version":3,"file":"tui.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/tui.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAQpC,eAAO,MAAM,UAAU,SAwCnB,CAAC"}
@@ -2,7 +2,7 @@ import { Command } from "commander";
2
2
  import { render } from "ink";
3
3
  import React from "react";
4
4
  import { App } from "../tui/App.js";
5
- import { findProjectRoot } from "../../shared/project.js";
5
+ import { findProjectRoot, setConfigOverride, resolveOverridePath } from "../../shared/project.js";
6
6
  import { createLogger, parseVerbosity } from "../../shared/logger.js";
7
7
  import { getGlobalOptions } from "./helpers.js";
8
8
  export const tuiCommand = new Command("tui")
@@ -12,7 +12,12 @@ export const tuiCommand = new Command("tui")
12
12
  const globalOpts = getGlobalOptions(command);
13
13
  const verbosity = globalOpts.verbose;
14
14
  const logLevel = parseVerbosity(verbosity);
15
- const projectRoot = findProjectRoot(undefined, globalOpts.dir);
15
+ if (globalOpts.config) {
16
+ setConfigOverride(resolveOverridePath(globalOpts.config));
17
+ }
18
+ const projectRoot = globalOpts.config
19
+ ? resolveOverridePath(globalOpts.config)
20
+ : findProjectRoot(undefined, globalOpts.dir);
16
21
  // Log TUI startup
17
22
  if (projectRoot) {
18
23
  const logger = createLogger("tui", projectRoot, logLevel);
@@ -1 +1 @@
1
- {"version":3,"file":"tui.js","sourceRoot":"","sources":["../../../src/cli/commands/tui.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,MAAM,EAAE,MAAM,KAAK,CAAC;AAC7B,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,GAAG,EAAE,MAAM,eAAe,CAAC;AACpC,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACtE,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAEhD,MAAM,CAAC,MAAM,UAAU,GAAG,IAAI,OAAO,CAAC,KAAK,CAAC;KACzC,WAAW,CAAC,8BAA8B,CAAC;KAC3C,MAAM,CAAC,MAAM,EAAE,iEAAiE,CAAC;KACjF,MAAM,CAAC,CAAC,OAAyB,EAAE,OAAgB,EAAE,EAAE;IACtD,MAAM,UAAU,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC;IAC7C,MAAM,SAAS,GAAG,UAAU,CAAC,OAAO,CAAC;IACrC,MAAM,QAAQ,GAAG,cAAc,CAAC,SAAS,CAAC,CAAC;IAC3C,MAAM,WAAW,GAAG,eAAe,CAAC,SAAS,EAAE,UAAU,CAAC,GAAG,CAAC,CAAC;IAE/D,kBAAkB;IAClB,IAAI,WAAW,EAAE,CAAC;QAChB,MAAM,MAAM,GAAG,YAAY,CAAC,KAAK,EAAE,WAAW,EAAE,QAAQ,CAAC,CAAC;QAC1D,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IAC7B,CAAC;IAED,MAAM,EAAE,aAAa,EAAE,OAAO,EAAE,GAAG,MAAM,CACvC,KAAK,CAAC,aAAa,CAAC,GAAG,EAAE,EAAE,WAAW,EAAE,WAAW,IAAI,SAAS,EAAE,CAAC,CACpE,CAAC;IAEF,+DAA+D;IAC/D,IAAI,OAAO,CAAC,EAAE,EAAE,CAAC;QACf,UAAU,CAAC,GAAG,EAAE;YACd,OAAO,EAAE,CAAC;QACZ,CAAC,EAAE,GAAG,CAAC,CAAC;IACV,CAAC;IAED,KAAK,aAAa,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE;QAC7B,eAAe;QACf,IAAI,WAAW,EAAE,CAAC;YAChB,MAAM,MAAM,GAAG,YAAY,CAAC,KAAK,EAAE,WAAW,EAAE,QAAQ,CAAC,CAAC;YAC1D,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QAC5B,CAAC;IACH,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"tui.js","sourceRoot":"","sources":["../../../src/cli/commands/tui.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,MAAM,EAAE,MAAM,KAAK,CAAC;AAC7B,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,GAAG,EAAE,MAAM,eAAe,CAAC;AACpC,OAAO,EAAE,eAAe,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAClG,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACtE,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAEhD,MAAM,CAAC,MAAM,UAAU,GAAG,IAAI,OAAO,CAAC,KAAK,CAAC;KACzC,WAAW,CAAC,8BAA8B,CAAC;KAC3C,MAAM,CAAC,MAAM,EAAE,iEAAiE,CAAC;KACjF,MAAM,CAAC,CAAC,OAAyB,EAAE,OAAgB,EAAE,EAAE;IACtD,MAAM,UAAU,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC;IAC7C,MAAM,SAAS,GAAG,UAAU,CAAC,OAAO,CAAC;IACrC,MAAM,QAAQ,GAAG,cAAc,CAAC,SAAS,CAAC,CAAC;IAE3C,IAAI,UAAU,CAAC,MAAM,EAAE,CAAC;QACtB,iBAAiB,CAAC,mBAAmB,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC;IAC5D,CAAC;IAED,MAAM,WAAW,GAAG,UAAU,CAAC,MAAM;QACnC,CAAC,CAAC,mBAAmB,CAAC,UAAU,CAAC,MAAM,CAAC;QACxC,CAAC,CAAC,eAAe,CAAC,SAAS,EAAE,UAAU,CAAC,GAAG,CAAC,CAAC;IAE/C,kBAAkB;IAClB,IAAI,WAAW,EAAE,CAAC;QAChB,MAAM,MAAM,GAAG,YAAY,CAAC,KAAK,EAAE,WAAW,EAAE,QAAQ,CAAC,CAAC;QAC1D,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IAC7B,CAAC;IAED,MAAM,EAAE,aAAa,EAAE,OAAO,EAAE,GAAG,MAAM,CACvC,KAAK,CAAC,aAAa,CAAC,GAAG,EAAE,EAAE,WAAW,EAAE,WAAW,IAAI,SAAS,EAAE,CAAC,CACpE,CAAC;IAEF,+DAA+D;IAC/D,IAAI,OAAO,CAAC,EAAE,EAAE,CAAC;QACf,UAAU,CAAC,GAAG,EAAE;YACd,OAAO,EAAE,CAAC;QACZ,CAAC,EAAE,GAAG,CAAC,CAAC;IACV,CAAC;IAED,KAAK,aAAa,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE;QAC7B,eAAe;QACf,IAAI,WAAW,EAAE,CAAC;YAChB,MAAM,MAAM,GAAG,YAAY,CAAC,KAAK,EAAE,WAAW,EAAE,QAAQ,CAAC,CAAC;YAC1D,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QAC5B,CAAC;IACH,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
package/dist/cli/index.js CHANGED
@@ -13,6 +13,7 @@ import { statusCommand } from "./commands/status.js";
13
13
  import { requestsCommand } from "./commands/requests.js";
14
14
  import { requestCommand } from "./commands/request.js";
15
15
  import { sessionsCommand } from "./commands/sessions.js";
16
+ import { browserCommand } from "./commands/browser.js";
16
17
  import { completionsCommand } from "./commands/completions.js";
17
18
  import { getProcsiVersion } from "../shared/version.js";
18
19
  program
@@ -20,7 +21,9 @@ program
20
21
  .description("Terminal HTTP interception toolkit")
21
22
  .version(getProcsiVersion())
22
23
  .option("-v, --verbose", "increase verbosity (use -vv or -vvv for more)", (_, prev) => prev + 1, 0)
23
- .option("-d, --dir <path>", "override project root directory");
24
+ .option("-d, --dir <path>", "override project root directory")
25
+ .option("-c, --config <path>", "override procsi data directory (no .procsi appended)");
26
+ program.addCommand(browserCommand);
24
27
  program.addCommand(clearCommand);
25
28
  program.addCommand(debugDumpCommand);
26
29
  program.addCommand(onCommand);
@@ -37,8 +40,9 @@ program.addCommand(sessionsCommand);
37
40
  program.addCommand(completionsCommand);
38
41
  program.addHelpText("after", `
39
42
  Quick start:
40
- procsi on Start intercepting HTTP traffic
41
- procsi tui Browse captured requests
43
+ procsi on Start intercepting HTTP traffic
44
+ procsi tui Browse captured requests
45
+ procsi browser Launch a proxied browser session
42
46
 
43
47
  Docs: https://github.com/mtford90/procsi`);
44
48
  program.parse();
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC7C,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AACjE,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAC/D,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAExD,OAAO;KACJ,IAAI,CAAC,QAAQ,CAAC;KACd,WAAW,CAAC,oCAAoC,CAAC;KACjD,OAAO,CAAC,gBAAgB,EAAE,CAAC;KAC3B,MAAM,CACL,eAAe,EACf,+CAA+C,EAC/C,CAAC,CAAC,EAAE,IAAY,EAAE,EAAE,CAAC,IAAI,GAAG,CAAC,EAC7B,CAAC,CACF;KACA,MAAM,CAAC,kBAAkB,EAAE,iCAAiC,CAAC,CAAC;AAEjE,OAAO,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;AACjC,OAAO,CAAC,UAAU,CAAC,gBAAgB,CAAC,CAAC;AACrC,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;AAC9B,OAAO,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;AAC/B,OAAO,CAAC,UAAU,CAAC,mBAAmB,CAAC,CAAC;AACxC,OAAO,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;AAC/B,OAAO,CAAC,UAAU,CAAC,cAAc,CAAC,CAAC;AACnC,OAAO,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC;AAClC,OAAO,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;AAC/B,OAAO,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC;AAClC,OAAO,CAAC,UAAU,CAAC,eAAe,CAAC,CAAC;AACpC,OAAO,CAAC,UAAU,CAAC,cAAc,CAAC,CAAC;AACnC,OAAO,CAAC,UAAU,CAAC,eAAe,CAAC,CAAC;AACpC,OAAO,CAAC,UAAU,CAAC,kBAAkB,CAAC,CAAC;AAEvC,OAAO,CAAC,WAAW,CACjB,OAAO,EACP;;;;;yCAKuC,CACxC,CAAC;AAEF,OAAO,CAAC,KAAK,EAAE,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC7C,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AACjE,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAC/D,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAExD,OAAO;KACJ,IAAI,CAAC,QAAQ,CAAC;KACd,WAAW,CAAC,oCAAoC,CAAC;KACjD,OAAO,CAAC,gBAAgB,EAAE,CAAC;KAC3B,MAAM,CACL,eAAe,EACf,+CAA+C,EAC/C,CAAC,CAAC,EAAE,IAAY,EAAE,EAAE,CAAC,IAAI,GAAG,CAAC,EAC7B,CAAC,CACF;KACA,MAAM,CAAC,kBAAkB,EAAE,iCAAiC,CAAC;KAC7D,MAAM,CAAC,qBAAqB,EAAE,sDAAsD,CAAC,CAAC;AAEzF,OAAO,CAAC,UAAU,CAAC,cAAc,CAAC,CAAC;AACnC,OAAO,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;AACjC,OAAO,CAAC,UAAU,CAAC,gBAAgB,CAAC,CAAC;AACrC,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;AAC9B,OAAO,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;AAC/B,OAAO,CAAC,UAAU,CAAC,mBAAmB,CAAC,CAAC;AACxC,OAAO,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;AAC/B,OAAO,CAAC,UAAU,CAAC,cAAc,CAAC,CAAC;AACnC,OAAO,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC;AAClC,OAAO,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;AAC/B,OAAO,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC;AAClC,OAAO,CAAC,UAAU,CAAC,eAAe,CAAC,CAAC;AACpC,OAAO,CAAC,UAAU,CAAC,cAAc,CAAC,CAAC;AACnC,OAAO,CAAC,UAAU,CAAC,eAAe,CAAC,CAAC;AACpC,OAAO,CAAC,UAAU,CAAC,kBAAkB,CAAC,CAAC;AAEvC,OAAO,CAAC,WAAW,CACjB,OAAO,EACP;;;;;;yCAMuC,CACxC,CAAC;AAEF,OAAO,CAAC,KAAK,EAAE,CAAC"}
@@ -10,6 +10,10 @@ interface AppProps {
10
10
  }
11
11
  export declare const MIN_TERMINAL_COLUMNS = 60;
12
12
  export declare const MIN_TERMINAL_ROWS = 10;
13
+ export declare const DEFAULT_LIST_RATIO = 0.6;
14
+ export declare const MIN_LIST_RATIO = 0.15;
15
+ export declare const MAX_LIST_RATIO = 0.85;
16
+ export declare const RATIO_STEP = 0.05;
13
17
  export declare function App(props: AppProps): React.ReactElement;
14
18
  export {};
15
19
  //# sourceMappingURL=App.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"App.d.ts","sourceRoot":"","sources":["../../../src/cli/tui/App.tsx"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAA4D,MAAM,OAAO,CAAC;AAoCjF,UAAU,QAAQ;IAChB,0DAA0D;IAC1D,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,wDAAwD;IACxD,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAID,eAAO,MAAM,oBAAoB,KAAK,CAAC;AACvC,eAAO,MAAM,iBAAiB,KAAK,CAAC;AA0zBpC,wBAAgB,GAAG,CAAC,KAAK,EAAE,QAAQ,GAAG,KAAK,CAAC,YAAY,CAMvD"}
1
+ {"version":3,"file":"App.d.ts","sourceRoot":"","sources":["../../../src/cli/tui/App.tsx"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAA4D,MAAM,OAAO,CAAC;AAoCjF,UAAU,QAAQ;IAChB,0DAA0D;IAC1D,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,wDAAwD;IACxD,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAID,eAAO,MAAM,oBAAoB,KAAK,CAAC;AACvC,eAAO,MAAM,iBAAiB,KAAK,CAAC;AAIpC,eAAO,MAAM,kBAAkB,MAAM,CAAC;AACtC,eAAO,MAAM,cAAc,OAAO,CAAC;AACnC,eAAO,MAAM,cAAc,OAAO,CAAC;AACnC,eAAO,MAAM,UAAU,OAAO,CAAC;AAq2B/B,wBAAgB,GAAG,CAAC,KAAK,EAAE,QAAQ,GAAG,KAAK,CAAC,YAAY,CAMvD"}