Skip to content

feat: show startup logs on successful daemon start#111

Merged
jdx merged 2 commits into
mainfrom
feat/show-startup-logs
Jan 17, 2026
Merged

feat: show startup logs on successful daemon start#111
jdx merged 2 commits into
mainfrom
feat/show-startup-logs

Conversation

@jdx

@jdx jdx commented Jan 17, 2026

Copy link
Copy Markdown
Owner

Summary

Display daemon logs briefly after successful start/run commands, providing visibility into daemon initialization.

Currently logs are only shown when a daemon fails to start. This change shows startup logs on success too, giving users visibility into whether the daemon initialized properly.

Changes

  • Add print_startup_logs() function to logs.rs (similar to existing print_logs_for_time_range() but with "Startup logs" header)
  • Add --quiet / -q flag to both start and run commands to suppress startup logs
  • Print startup logs after successful daemon start (unless --quiet)

Example Output

=== Startup logs ===
2024-01-15 10:30:45 Server listening on port 3000
2024-01-15 10:30:45 Connected to database
=== End of logs ===

Test plan

  • pitchfork start <daemon> - Should show startup logs
  • pitchfork start <daemon> --quiet - Should be silent on success
  • pitchfork run <daemon> -- <cmd> - Should show startup logs
  • pitchfork run <daemon> --quiet -- <cmd> - Should be silent
  • Verify failure case still shows error logs regardless of quiet flag

Resolves #104

🤖 Generated with Claude Code


Note

Shows recent daemon logs after successful startup for visibility, with an option to suppress.

  • New print_startup_logs() in logs.rs; invoked by start and run after success (captures start time per daemon)
  • Adds -q --quiet flag to start and run to suppress startup log output
  • Updates CLI usage/docs (commands.json, start.md, run.md, pitchfork.usage.kdl) including backticked [daemons.<name>], logs --clear (all daemons), and list help text
  • Adds /docs/.vitepress/dist to .gitignore

Written by Cursor Bugbot for commit b9197ca. This will update automatically on new commits. Configure here.

Display daemon logs briefly after successful `start`/`run` commands,
providing visibility into daemon initialization. This matches the
existing behavior on failure where error logs are shown.

Changes:
- Add `print_startup_logs()` function to logs.rs
- Add `--quiet` / `-q` flag to both `start` and `run` commands
- Print startup logs after successful daemon start (unless quiet)

Resolves #104

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
@jdx jdx force-pushed the feat/show-startup-logs branch from 1c1d228 to 2ec3a31 Compare January 17, 2026 21:23
The `<name>` in `[daemons.<name>]` was being interpreted as an HTML
element by VitePress/Vue, causing the docs build to fail with
"Element is missing end tag." Wrapping it in backticks fixes this.

Also adds /docs/.vitepress/dist to .gitignore.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
@jdx jdx merged commit 9a7efe8 into main Jan 17, 2026
4 checks passed
@jdx jdx deleted the feat/show-startup-logs branch January 17, 2026 21:46
@github-actions github-actions Bot mentioned this pull request Jan 18, 2026
jdx pushed a commit that referenced this pull request Jan 18, 2026
## 🤖 New release

* `pitchfork-cli`: 0.2.1 -> 0.3.0

<details><summary><i><b>Changelog</b></i></summary><p>

<blockquote>

## [0.3.0](v0.2.1...v0.3.0) -
2026-01-18

### Added

- *(web)* add devilish pitchfork theming to web UI
([#115](#115))
- *(web)* add web UI for daemon management
([#112](#112))
- show startup logs on successful daemon start
([#111](#111))
- add HTTP ready check for daemon startup
([#110](#110))
- delay autostopping daemons when leaving directory
([#108](#108))
- *(logs)* clear all logs when no daemon specified
([#109](#109))
- *(list)* show error messages in daemon list output
([#107](#107))
- refactor the code structure of `start` and `run`, allowing for
parallel starting daemons
([#56](#56))
- [**breaking**] support auto start on boot
([#53](#53))
- print logs when failed on `pf start|run`
([#52](#52))
- [**breaking**] support global system/user config
([#46](#46))
- *(test)* refactor tests and add tests for `interval_watch` and
`cron_watch` ([#45](#45))

### Fixed

- add timeouts to IPC operations to prevent shell hook hangs
([#106](#106))
- *(deps)* update rust crate toml to 0.9
([#50](#50))
- replace panics with proper error handling
([#90](#90))
- *(deps)* update rust crate notify to v8
([#78](#78))
- *(deps)* update rust crate duct to v1
([#72](#72))
- *(deps)* update rust crate dirs to v6
([#64](#64))
- *(deps)* update rust crate cron to 0.15
([#48](#48))
- *(deps)* update rust crate sysinfo to 0.37
([#49](#49))
- *(deps)* update rust crate itertools to 0.14
([#33](#33))
- *(deps)* update rust crate strum to 0.27
([#35](#35))
- *(deps)* update rust crate console to 0.16
([#32](#32))
- give a user-friendly error when the work fails
([#44](#44))

### Other

- *(cli)* add long_about with examples to CLI commands
([#91](#91))
- fix documentation issues and inconsistencies
([#89](#89))
- *(deps)* lock file maintenance
([#88](#88))
- *(deps)* update rust crate serde_json to v1.0.149
([#87](#87))
- *(deps)* lock file maintenance
([#85](#85))
- *(deps)* update rust crate serde_json to v1.0.148
([#84](#84))
- *(deps)* update rust crate tempfile to v3.24.0
([#82](#82))
- *(deps)* update rust crate rmp-serde to v1.3.1
([#80](#80))
- *(deps)* update rust crate serde_json to v1.0.147
([#81](#81))
- *(deps)* lock file maintenance
([#79](#79))
- *(deps)* update rust crate shell-words to v1.1.1
([#77](#77))
- *(deps)* lock file maintenance
([#76](#76))
- *(deps)* update rust crate log to v0.4.29
([#75](#75))
- *(deps)* lock file maintenance
([#73](#73))
- *(deps)* lock file maintenance
([#68](#68))
- *(deps)* lock file maintenance
([#65](#65))
- *(deps)* lock file maintenance
([#62](#62))
- *(deps)* update rust crate clap to v4.5.51
([#60](#60))
- *(deps)* lock file maintenance
([#59](#59))
- *(deps)* update rust crate clap to v4.5.50
([#57](#57))
- Update README ([#55](#55))
- *(deps)* lock file maintenance
([#54](#54))
- *(deps)* lock file maintenance
([#47](#47))
</blockquote>


</p></details>

---
This PR was generated with
[release-plz](https://github.com/release-plz/release-plz/).

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
@jdx jdx mentioned this pull request Jan 18, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant