From 5143a552d10c106a2c64fa49fe51e64963be322b Mon Sep 17 00:00:00 2001 From: konard Date: Thu, 8 Jan 2026 04:19:12 +0100 Subject: [PATCH 1/3] Initial commit with task details Adding CLAUDE.md with task information for AI processing. This file will be removed when the task is complete. Issue: https://github.com/link-foundation/start/issues/66 --- CLAUDE.md | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 CLAUDE.md diff --git a/CLAUDE.md b/CLAUDE.md new file mode 100644 index 0000000..86d75fc --- /dev/null +++ b/CLAUDE.md @@ -0,0 +1,5 @@ +Issue to solve: https://github.com/link-foundation/start/issues/66 +Your prepared branch: issue-66-b4bebb964b80 +Your prepared working directory: /tmp/gh-issue-solver-1767842350750 + +Proceed. From daeda1ba06806400a3ab3c59c9aec30a14f9cbbf Mon Sep 17 00:00:00 2001 From: konard Date: Thu, 8 Jan 2026 04:24:46 +0100 Subject: [PATCH 2/3] docs: Update documentation to reflect status spine output format MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Update README.md with spine format examples for logging output - Update ARCHITECTURE.md Logging Architecture section with new format - Update REQUIREMENTS.md Output Format section with spine format examples - Replace all outdated box format ([timestamp] Starting:) examples All docs now correctly show the new status spine format: - β”‚ prefix for metadata - $ prefix for command - βœ“/βœ— result markers - No prefix for command output Fixes #66 πŸ€– Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 --- ARCHITECTURE.md | 30 +++++++++++++++-------- README.md | 64 +++++++++++++++++++++++++++++++++---------------- REQUIREMENTS.md | 61 ++++++++++++++++++++++++++++++++++++---------- 3 files changed, 112 insertions(+), 43 deletions(-) diff --git a/ARCHITECTURE.md b/ARCHITECTURE.md index eae5c81..ba5d2b7 100644 --- a/ARCHITECTURE.md +++ b/ARCHITECTURE.md @@ -205,20 +205,30 @@ By default, all isolation environments automatically exit after command completi β”‚ β”‚ Execution β”‚ β”‚ stdout/stderrβ”‚ β”‚ Temp Log File β”‚ β”‚ β”‚ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β”‚ β”‚ β”‚ -β”‚ Log File Format: β”‚ +β”‚ Console Output Format (Status Spine): β”‚ β”‚ β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”‚ -β”‚ β”‚ === Start Command Log === β”‚ β”‚ -β”‚ β”‚ Timestamp: 2024-01-15 10:30:45 β”‚ β”‚ -β”‚ β”‚ Command: β”‚ β”‚ -β”‚ β”‚ Shell: /bin/bash β”‚ β”‚ -β”‚ β”‚ Platform: linux β”‚ β”‚ -β”‚ β”‚ ================================================== β”‚ β”‚ +β”‚ β”‚ β”‚ session abc-123-def-456 β”‚ β”‚ +β”‚ β”‚ β”‚ start 2024-01-15 10:30:45 β”‚ β”‚ +β”‚ β”‚ β”‚ β”‚ β”‚ +β”‚ β”‚ $ β”‚ β”‚ +β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ -β”‚ β”‚ ================================================== β”‚ β”‚ -β”‚ β”‚ Finished: 2024-01-15 10:30:46 β”‚ β”‚ -β”‚ β”‚ Exit Code: 0 β”‚ β”‚ +β”‚ β”‚ β”‚ β”‚ +β”‚ β”‚ βœ“ (or βœ— for failure) β”‚ β”‚ +β”‚ β”‚ β”‚ finish 2024-01-15 10:30:46 β”‚ β”‚ +β”‚ β”‚ β”‚ duration 1.234s β”‚ β”‚ +β”‚ β”‚ β”‚ exit 0 β”‚ β”‚ +β”‚ β”‚ β”‚ β”‚ β”‚ +β”‚ β”‚ β”‚ log /tmp/start-command-123.log β”‚ β”‚ +β”‚ β”‚ β”‚ session abc-123-def-456 β”‚ β”‚ β”‚ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β”‚ β”‚ β”‚ +β”‚ Format key: β”‚ +β”‚ - β”‚ prefix β†’ tool metadata β”‚ +β”‚ - $ prefix β†’ executed command β”‚ +β”‚ - No prefix β†’ program output (stdout/stderr) β”‚ +β”‚ - βœ“ / βœ— β†’ result marker (success/failure) β”‚ +β”‚ β”‚ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ ``` diff --git a/README.md b/README.md index 98d9719..89e45fc 100644 --- a/README.md +++ b/README.md @@ -96,16 +96,27 @@ Variables like `$packageName`, `$version`, `$repository` are captured and used i ### Automatic Logging -All command output is automatically saved to your system's temporary directory with timestamps: +All command output is automatically saved to your system's temporary directory. Output uses a "status spine" format with clear visual distinction: ``` -[2024-01-15 10:30:45.123] Starting: npm test +β”‚ session abc-123-def-456-ghi +β”‚ start 2024-01-15 10:30:45 +β”‚ +$ npm test + ... command output ... -[2024-01-15 10:30:52.456] Finished -Exit code: 0 -Log saved: /tmp/start-command-1705312245123-abc123.log + +βœ“ +β”‚ finish 2024-01-15 10:30:52 +β”‚ duration 7.456s +β”‚ exit 0 +β”‚ +β”‚ log /tmp/start-command-1705312245123-abc123.log +β”‚ session abc-123-def-456-ghi ``` +The `β”‚` prefix indicates tool metadata, `$` shows the executed command, and `βœ“`/`βœ—` indicates success/failure. + ### Exit Code Display The exit code is always prominently displayed after command completion, making it clear whether the command succeeded or failed. @@ -123,11 +134,20 @@ When a command fails (non-zero exit code) and it's a globally installed NPM pack - Link to uploaded log ``` -[2024-01-15 10:30:45.123] Starting: some-npm-tool --broken-arg +β”‚ session abc-123-def-456-ghi +β”‚ start 2024-01-15 10:30:45 +β”‚ +$ some-npm-tool --broken-arg + ... error output ... -[2024-01-15 10:30:46.789] Finished -Exit code: 1 -Log saved: /tmp/start-command-1705312246789-def456.log + +βœ— +β”‚ finish 2024-01-15 10:30:46 +β”‚ duration 1.789s +β”‚ exit 1 +β”‚ +β”‚ log /tmp/start-command-1705312246789-def456.log +β”‚ session abc-123-def-456-ghi Detected repository: https://github.com/owner/some-npm-tool Log uploaded: https://gist.github.com/user/abc123 @@ -315,25 +335,27 @@ You can create your own substitution patterns by placing a `substitutions.lino` ## Log File Format -Log files are saved as `start-command-{timestamp}-{random}.log` and contain: +Log files are saved as `start-command-{timestamp}-{random}.log` and contain the command output along with metadata. The console output uses a "status spine" format: ``` -=== Start Command Log === -Timestamp: 2024-01-15 10:30:45.123 -Command: bun test -Shell: /bin/bash -Platform: linux -Bun Version: 1.2.0 -Working Directory: /home/user/project -================================================== +β”‚ session abc-123-def-456-ghi +β”‚ start 2024-01-15 10:30:45 +β”‚ +$ bun test ... command output ... -================================================== -Finished: 2024-01-15 10:30:52.456 -Exit Code: 0 +βœ“ +β”‚ finish 2024-01-15 10:30:52 +β”‚ duration 7.456s +β”‚ exit 0 +β”‚ +β”‚ log /tmp/start-command-1705312245123-abc123.log +β”‚ session abc-123-def-456-ghi ``` +The log file itself contains the raw command output and execution metadata. + ## License MIT diff --git a/REQUIREMENTS.md b/REQUIREMENTS.md index 6e8a26c..13b88e2 100644 --- a/REQUIREMENTS.md +++ b/REQUIREMENTS.md @@ -242,24 +242,51 @@ Note: `--auto-remove-docker-container` is only valid with `--isolated docker` an ## Output Format +The output uses a "status spine" format that is width-independent, lossless, and works uniformly in TTY, tmux, SSH, CI, and log files. + +Format conventions: +- `β”‚` prefix β†’ tool metadata +- `$` prefix β†’ executed command +- No prefix β†’ program output (stdout/stderr) +- `βœ“` / `βœ—` β†’ result marker (success/failure) + ### Success Case ``` -[2024-01-15 10:30:45] Starting: ls -la +β”‚ session abc-123-def-456-ghi +β”‚ start 2024-01-15 10:30:45 +β”‚ +$ ls -la + ... command output ... -[2024-01-15 10:30:45] Finished -Exit code: 0 -Log saved: /tmp/start-command-1705312245-abc123.log + +βœ“ +β”‚ finish 2024-01-15 10:30:45 +β”‚ duration 0.123s +β”‚ exit 0 +β”‚ +β”‚ log /tmp/start-command-1705312245-abc123.log +β”‚ session abc-123-def-456-ghi ``` ### Failure Case (With Auto-Reporting) ``` -[2024-01-15 10:30:45] Starting: failing-npm-command --arg +β”‚ session abc-123-def-456-ghi +β”‚ start 2024-01-15 10:30:45 +β”‚ +$ failing-npm-command --arg + ... command output/error ... -[2024-01-15 10:30:46] Finished -Exit code: 1 -Log saved: /tmp/start-command-1705312246-def456.log + +βœ— +β”‚ finish 2024-01-15 10:30:46 +β”‚ duration 1.234s +β”‚ exit 1 +β”‚ +β”‚ log /tmp/start-command-1705312246-def456.log +β”‚ session abc-123-def-456-ghi + Detected repository: https://github.com/owner/repo Log uploaded: https://gist.github.com/... Issue created: https://github.com/owner/repo/issues/123 @@ -268,11 +295,21 @@ Issue created: https://github.com/owner/repo/issues/123 ### Failure Case (Without Auto-Reporting) ``` -[2024-01-15 10:30:45] Starting: unknown-command +β”‚ session abc-123-def-456-ghi +β”‚ start 2024-01-15 10:30:45 +β”‚ +$ unknown-command + ... command output/error ... -[2024-01-15 10:30:45] Finished -Exit code: 127 -Log saved: /tmp/start-command-1705312245-ghi789.log + +βœ— +β”‚ finish 2024-01-15 10:30:45 +β”‚ duration 0.050s +β”‚ exit 127 +β”‚ +β”‚ log /tmp/start-command-1705312245-ghi789.log +β”‚ session abc-123-def-456-ghi + Repository not detected - automatic issue creation skipped ``` From 2ab27f0449c6a8b1259c652fa1ba3ae7c8d02417 Mon Sep 17 00:00:00 2001 From: konard Date: Thu, 8 Jan 2026 04:25:53 +0100 Subject: [PATCH 3/3] chore: Remove CLAUDE.md task file --- CLAUDE.md | 5 ----- 1 file changed, 5 deletions(-) delete mode 100644 CLAUDE.md diff --git a/CLAUDE.md b/CLAUDE.md deleted file mode 100644 index 86d75fc..0000000 --- a/CLAUDE.md +++ /dev/null @@ -1,5 +0,0 @@ -Issue to solve: https://github.com/link-foundation/start/issues/66 -Your prepared branch: issue-66-b4bebb964b80 -Your prepared working directory: /tmp/gh-issue-solver-1767842350750 - -Proceed.