Commit Graph

166 Commits

Author SHA1 Message Date
Claude
a7d4e210c2
Auto-start stopped/errored apps on push activate
Previously, pushing a new version would only restart apps that were
already running. Apps in stopped or invalid state (e.g. due to a
previous startup error) were left unchanged, requiring a manual start.

Now the activate endpoint calls startApp() for stopped/invalid apps,
so pushing a code fix automatically attempts to start the app.

https://claude.ai/code/session_014UvBEvHbnhaoMLebdRFzm6
2026-02-12 16:17:45 +00:00
Claude
2f4d609290
Fix app rename failing with "port is taken" error
renameApp() killed the old process with .kill() but didn't wait for it
to actually exit before restarting on the same port. The OS still had
the port bound, causing the new process to fail with "port is taken".

Additionally, the old process's exit handler would fire after the rename
and corrupt the app's state—releasing the new process's port, setting
state to 'invalid', and nullifying the proc reference.

Fix by:
- Making renameApp async and awaiting proc.exited before proceeding
- Guarding the exit handler to bail out when a newer process has taken over

https://claude.ai/code/session_01W9GF8Cy7T6V2rnVcoNd1Nc
2026-02-12 16:13:59 +00:00
a96aa1d2dc ruby on rails 2026-02-12 08:07:23 -08:00
14281a1bf5 don't diff binary files 2026-02-12 07:51:51 -08:00
Claude
eb8ef0dd4d
Rename stats to metrics and add data size metric
Rename the "stats" CLI command, tool app, and all internal references
to "metrics". Add file size tracking from each app's DATA_DIR as a new
metric, shown in both the CLI table and web UI.

https://claude.ai/code/session_013agP8J1cCfrWZkueZ33jQB
2026-02-12 15:28:20 +00:00
0e3699da5a show version in config 2026-02-11 21:08:38 -08:00
681a3f2f9e way simpler 2026-02-11 19:51:43 -08:00
b6e9ec73de .toes 2026-02-11 19:13:34 -08:00
10154dfd4f respect gitignore in toes status 2026-02-11 18:16:34 -08:00
Chris Wanstrath
c183fe42e9 set TOES_URL 2026-02-11 16:09:14 -08:00
Chris Wanstrath
d94a4421f9 integrated cron logs, cron cli 2026-02-10 11:12:57 -08:00
89ea6f586a toes diff pager 2026-02-10 08:09:00 -08:00
579b082b48 legacy 2026-02-09 22:35:43 -08:00
bffa4236e7 detect renames 2026-02-09 22:03:49 -08:00
4a2223d3d7 smarter sync 2026-02-09 21:59:02 -08:00
79a0471383 toes history 2026-02-09 21:42:40 -08:00
115d3199e8 toes diff improvements 2026-02-09 21:40:48 -08:00
891b08ecd8 try to better detect failed process start 2026-02-09 21:32:48 -08:00
7c04aceef9 [cron] setup app env properly when running tasks 2026-02-09 21:17:02 -08:00
8f37274cee toes env -g 2026-02-09 20:58:07 -08:00
86a91469be organize --help 2026-02-09 20:47:17 -08:00
9517f6d4b2 kill errant newline 2026-02-09 20:37:24 -08:00
d43e1c1c17 simpler sync 2026-02-09 20:36:58 -08:00
1685cc135d show cron errors 2026-02-09 20:36:46 -08:00
d4e8975200 fix emoji updating 2026-02-09 19:48:12 -08:00
Chris Wanstrath
b447f7d0ca better error messages 2026-02-09 16:59:00 -08:00
Chris Wanstrath
a1aa37297f DATA_DIR 2026-02-09 16:08:44 -08:00
Chris Wanstrath
d6ae39ac15 global env variables 2026-02-09 10:50:21 -08:00
Chris Wanstrath
4b3ab78ae4 use pkg version 2026-02-09 09:49:03 -08:00
eaae9ae993 fix cli host 2026-02-09 09:39:05 -08:00
96289f7e30 whoops 2026-02-08 14:19:00 -08:00
b43c1b4660 responsive for mobile 2026-02-08 13:56:09 -08:00
Chris Wanstrath
c224dd25a9 ignore health checks in logs 2026-02-04 16:46:53 -08:00
a396f740a5 health checks 2026-02-04 13:35:38 -08:00
02fca1313c show diffs 2026-02-04 13:29:54 -08:00
9bf3973020 show emoji in tabs 2026-02-04 10:31:20 -08:00
0d81406190 fix linter errors 2026-02-04 10:04:35 -08:00
2ef00c9d53 /ok 2026-02-04 09:51:29 -08:00
0d572b4b5d share pids, proxy api 2026-02-04 08:54:35 -08:00
303d2dfc72 simpler init script for tools 2026-02-04 08:35:42 -08:00
d8769b2d9d fix app tabs 2026-02-04 08:35:38 -08:00
Chris Wanstrath
ed200431f2 skip node_modules when copying 2026-02-02 16:09:55 -08:00
Chris Wanstrath
52bfa783e1 install current symlink automatically from git 2026-02-02 16:03:32 -08:00
Chris Wanstrath
6f03954850 don't hardcode localhost 2026-02-02 15:50:40 -08:00
Chris Wanstrath
d99f80cd0e toes list shows everything by default 2026-02-02 14:59:39 -08:00
a58c42e0d4 dotenv support 2026-02-01 23:27:22 -08:00
f3040abc5d persistent logs 2026-02-01 22:15:25 -08:00
a81d61f910 simplify server 2026-02-01 21:40:32 -08:00
27c1bfd969 show toes server url 2026-02-01 21:29:20 -08:00
1fbc7a9858 TOES_URL 2026-02-01 09:09:57 -08:00
b8434ef2df minor 2026-01-30 22:51:04 -08:00
e4310bda6d categories in toes list --all 2026-01-30 22:25:20 -08:00
a56af4ed47 versions, rollback, clean 2026-01-30 22:13:34 -08:00
68ebf1d7a7 fix iframe again, maybe 2026-01-30 21:24:27 -08:00
51f347a544 remember 2026-01-30 20:50:27 -08:00
a25088e723 /tool redirects 2026-01-30 20:39:01 -08:00
d1b7e973d3 fix things 2026-01-30 20:30:07 -08:00
6f13ba0f66 forge 2026-01-30 19:55:21 -08:00
cd1a1cdbe5 v0.0.4 2026-01-30 19:48:07 -08:00
f1b78197c7 class it up 2026-01-30 18:51:43 -08:00
ae38084440 fix iframes, maybe 2026-01-30 18:46:08 -08:00
ed46638b50 --all, --tools 2026-01-30 18:13:29 -08:00
Chris Wanstrath
1da7e77f00 TOES_URL and TOES_HOST support 2026-01-30 17:00:07 -08:00
Chris Wanstrath
bde7a2c287 tools! 2026-01-30 16:59:32 -08:00
Chris Wanstrath
28948b13b2 toes diff and toes status 2026-01-30 16:58:12 -08:00
Chris Wanstrath
ebf3ffc3af spicy 2026-01-30 16:16:59 -08:00
Chris Wanstrath
91c6ee3675 build js in prod 2026-01-30 15:29:18 -08:00
Chris Wanstrath
557ea669fb fix toes new templates 2026-01-30 15:26:58 -08:00
f12854fc04 toes new --<template> 2026-01-30 12:25:06 -08:00
f1cf2b9291 reorg 2026-01-30 08:23:29 -08:00
769b564d20 monster features 2026-01-30 00:05:02 -08:00
9baf1c81b5 banana 2026-01-30 00:01:13 -08:00
32e52a030f rename 2026-01-29 23:53:37 -08:00
54f70e9bba toes version 2026-01-29 23:44:57 -08:00
2730cc0d8e npm 2026-01-29 23:42:41 -08:00
07300eb96f color 2026-01-29 23:39:28 -08:00
aa5b536942 delete modal 2026-01-29 23:34:32 -08:00
3068c719cd more gitignore 2026-01-29 23:29:47 -08:00
c4af302d9d toes sync and friends 2026-01-29 23:21:44 -08:00
dd56dc0df6 new app 2026-01-29 21:24:07 -08:00
9d22008f32 tweak app template 2026-01-29 20:48:20 -08:00
b7bda052e9 new and create (push) 2026-01-29 19:52:42 -08:00
714ed14581 split up some modules 2026-01-29 18:15:55 -08:00
Chris Wanstrath
fcdb8feea0 fix cli isApp 2026-01-29 15:22:39 -08:00
Chris Wanstrath
1e36fa0fa3 add gitignore parsing, new deps 2026-01-29 15:17:26 -08:00
Chris Wanstrath
635121a27d toes push/pull 2026-01-29 15:07:40 -08:00
Chris Wanstrath
776b77c14f tweak logging 2026-01-29 13:20:29 -08:00
830cd4e45d info command 2026-01-29 13:01:50 -08:00
0f5fd50fec colors 2026-01-29 11:34:56 -08:00
84a341ebf9 log -f 2026-01-29 11:33:21 -08:00
e1b53fc54d toes logs 2026-01-29 11:28:22 -08:00
7763dc6314 toes open <app> 2026-01-29 11:24:09 -08:00
95d4348560 start adding cli 2026-01-28 22:36:23 -08:00
2d544e9bd3 new coding guidelines 2026-01-28 22:21:03 -08:00
2c8fff85f4 partial updating 2026-01-28 21:33:49 -08:00
5d898ac485 fix dir mk/rm 2026-01-28 20:44:34 -08:00
a44c85abe0 default_emoji 2026-01-28 19:13:18 -08:00
707267bdaa scroll logs 2026-01-28 11:09:05 -08:00
47e5a57806 don't let hype apps pick their own port 2026-01-28 11:08:52 -08:00
422f042c03 tabs 2026-01-28 08:28:35 -08:00