abdus
f867799876
feat: Add subtitle timing and segmentation script
2026-10-20 04:34:13 +00:00
abdus
be9670b653
feat: Add aria2 download completion hook
2026-10-20 04:34:11 +00:00
abdus
06fcd7a10f
feat: Add version tag bump script
2026-10-20 07:31:39 +03:00
abdus
ba23a185be
fix(download_imageset): Skip processed images
2026-10-20 07:29:03 +03:00
abdus
a443eeb042
feat(router): Add router_refresh_ip.py to get a new CGNAT public IP
...
Standalone script that drops and re-establishes the router's PPPoE session
without a full reboot. Mirrors router_ui.py's RouterSession pattern: a
context manager that always logs out on exit, the CSRFToken header required
for writes since ABSB.5, and tolerant handling of the Disconnect/Connect
calls timing out with a Connect retry if the link doesn't come back up.
Confirmed working live: WAN IP and public IP (checked via api.ipify.org)
both changed after a run.
2026-10-19 00:33:45 +03:00
abdus
969046dec2
feat(router): Rework dashboard layout, add public IP/log controls, fix writes on ABSB.5
...
- Full-width CSS grid layout with Ping/Line/Connection cards at equal height
- Show public IP (via api.ipify.org) alongside WAN IP, with a "Get new public IP"
button that drops and re-establishes the PPPoE session
- Replace the wrong oid=zlog log endpoint with the real one the stock UI uses,
and add a logging on/off toggle (router logging was off by default)
- Poll the router in background threads with cached responses, since a live
/api/overview request took ~16s and made the page hang on "Connecting..."
- Fix: writes (DNS, logging toggle, reboot, WAN disconnect/connect) started
returning 403 after the ABSB.5 firmware upgrade; it now requires the session
key repeated in a CSRFToken header on every POST/PUT/DELETE, not just the
?sessionkey= query param GETs still accept
- Fix: Router is now a context manager that always logs out in __exit__, and
SIGTERM (what pkill sends) now triggers that cleanup too -- previously every
restart during dev leaked a session until the router hit its concurrent
login limit and locked out all further logins
- Fix: WAN Disconnect/Connect often don't return an HTTP response before the
link they're answering over drops; treat that timeout as "sent, unknown
outcome" and verify by polling instead of crashing, and retry Connect if
the router's own auto-reconnect doesn't kick in (it can get stuck at N/A)
2026-10-19 00:33:39 +03:00
abdus
c781ad84c4
chore(router): Rename reset_router.py to router_reset.py
2026-10-19 00:33:24 +03:00
abdus
545098eceb
feat(router): Add local dashboard with auto-login, status, devices and restart
2026-10-18 22:50:39 +03:00
abdus
cc6fe142f0
feat(router): Log DSL, PPPoE and ping health to a CSV to tell ISP drops from device drops
2026-10-18 22:50:39 +03:00
abdus
6294dc0555
refactor(router): Reboot the router over HTTPS with stdlib instead of Playwright
2026-10-18 22:50:39 +03:00
abdus
3b81216892
fix(snot): surface DB connection errors and clear stale error banner on search
2026-10-17 15:35:45 +03:00
abdus
d5a4764c4b
fix(immichup): Add images to studio albums
2026-10-10 16:40:53 +02:00
abdus
4d3b6ec06d
chore: Remove unused youtube summarizer
2026-10-09 13:03:10 +02:00
abdus
9627aaa31f
fix(chat): Clear old conversations
2026-10-09 13:02:57 +02:00
abdus
74e887db04
feat(torrentify): add torrent management commands
2026-10-08 11:27:35 +00:00
abdus
0d97094092
feat(hamsterimg): add image uploader
2026-10-08 11:27:33 +00:00
abdus
6eb0ab7d5a
feat(imageset_thumbnails): split sheets into pages
2026-10-08 11:27:31 +00:00
abdus
d572ca199f
feat(download_imageset): process ZIP archives
2026-10-08 11:27:24 +00:00
abdus
1939ef0c0d
feat: Add thumbnail contact sheet generator
2026-10-06 08:13:14 +02:00
abdus
e12feae399
fix(docker_refresh): Skip recreation for unchanged images
2026-10-04 14:00:24 +00:00
abdus
48fe3f025e
fix(chat): Improve menu click targets and dismissal
2026-10-04 10:40:29 +00:00
abdus
cc5cb24b59
feat: Add AGENTS.md
2026-10-04 08:29:13 +02:00
abdus
6a1ce2ad18
feat: Add minimal Deezer search + download script
2026-10-04 08:28:34 +02:00
abdus
f4764699e8
feat(download_imageset): Extend intercepted hosts
2026-10-04 08:27:02 +02:00
abdus
9a3b78105e
feat(monitor_dir): Add path/inode polling mode option
2026-10-04 08:25:47 +02:00
abdus
9e2e098928
feat(file_renamer): Read from list of known actors
2026-10-04 08:24:22 +02:00
abdus
aadb47a955
feat: Add script to generate Caddy config from Docker container labels
2026-10-04 08:23:46 +02:00
abdus
9e2659d3f1
feat(gigapixel): Update for the version bump and enable face recovery
2026-10-04 08:21:29 +02:00
abdus
b913274f87
feat: Add AI file renamer
2026-10-04 08:20:50 +02:00
abdus
f3526b60e5
feat: Add script to pull and redeploy Docker containers
2026-10-04 08:19:28 +02:00
abdus
4e61ace0df
feat: Add immich uploader
2026-09-30 12:15:43 +02:00
abdus
eb6b73e392
fix(chat): Update models
2026-09-28 04:57:28 +02:00
abdus
4bc948d77d
refactor(snot): Rewrite to postgrest API
2026-09-28 04:15:45 +02:00
abdus
2bbf6b36d4
chore: Delete defunct hooksy
2026-09-28 03:38:47 +02:00
abdus
de6771ac86
feat(sync-alfred): Add WebDAV preference sync
2026-09-05 09:29:46 +02:00
abdus
f3c20d8ed5
feat(export-pg): Add batched Postgres to SQLite export
2026-09-05 09:29:29 +02:00
abdus
3e5d58ea25
feat(backup-to-external): Add hardlink-aware backup tool
2026-09-05 09:29:26 +02:00
abdus
5a3cbdde6a
fix(sort-images): Detect formats from file signatures
2026-09-05 09:29:21 +02:00
abdus
256b81c828
fix(rename-children): Remove empty directories
2026-09-05 09:29:19 +02:00
abdus
8c78f79720
fix(mpv-pip): Accept newline-separated targets
2026-09-05 09:29:17 +02:00
abdus
5216362be7
chore(file-renamer): Use the default Python interpreter
2026-09-05 09:29:11 +02:00
abdus
69df91380c
fix(download-imageset): Flatten downloaded directories
2026-09-05 09:29:08 +02:00
abdus
7ede67b98f
feat(ai-photorealistic): Update photorealistic prompt
2026-09-05 09:29:04 +02:00
abdus
d5cf81a919
feat(chat): Support Youtube transcripts
2026-08-11 09:51:30 +02:00
abdus
3cba11f1df
feat(snot): Add gridvid support, update Alfred integrations
2026-08-11 09:50:55 +02:00
abdus
ec07e27924
fix(chat): Update models
2026-08-09 14:39:43 +02:00
abdus
3b4fc7159e
feat(chat): Add Clear button to history popup
...
Lets you wipe all saved conversations from localStorage (not just
today's) after a confirmation prompt.
2026-07-28 10:13:00 +02:00
abdus
eee4addd86
feat(chat): Add undo button to trim conversation to a prior message
...
Lets you click Undo under a user message to drop it and everything
after it, refilling the prompt with that message's text/images so it
can be edited and resent.
2026-07-28 09:22:15 +02:00
abdus
0ddf2c4db5
refactor(download_imageset): Migrate CLI from argparse to click
2026-07-28 08:41:40 +02:00
abdus
c9228ae4a7
feat(youtube_transcript_v2): Add --language/--auto options and unwrap output text
...
Auto mode prioritizes de/en/tr and falls back to the first available
transcript language; a shorter error is shown when the default fetch fails.
2026-07-26 11:08:02 +02:00
Abdüssamet Kocak
051b7b12f0
feat: Add MPV PIP
2026-07-25 09:09:40 +02:00
abdus
6bd4d58373
chore: Update everything
2026-07-24 15:58:31 +02:00
abdus
5100ad8365
feat(download_imageset): Support cwd option
2026-07-24 15:57:25 +02:00
abdus
b0088aeeef
feat(file_renamer): Support more formats
2026-07-24 15:56:38 +02:00
abdus
d0c1f1ab8a
feat(chat): Update models
2026-07-24 15:56:19 +02:00
abdus
441bec4401
feat(download-js-sourcemaps): reconstruct sources from source maps
2026-06-25 09:02:43 +03:00
abdus
8868e5a0b9
feat(k2s-download): add keep2share downloader flow
2026-06-25 09:02:43 +03:00
abdus
9ccb80c5af
feat(prune-backups): apply backup retention pruning
2026-06-25 09:02:43 +03:00
abdus
c296f8aeea
feat(sort-images): sort images by size or aspect ratio
2026-06-25 09:02:43 +03:00
abdus
83edb4a950
feat(tag-file): apply macOS Finder color tags
2026-06-25 09:02:43 +03:00
abdus
a172b55df7
feat(whisper-subtitles): generate srt with speed-adjusted timing
2026-06-25 09:02:43 +03:00
abdus
94523562c1
feat(wacli-export): export daily chat messages to csv
2026-06-25 09:02:43 +03:00
abdus
f1830a9696
chore(snot): idk
2026-06-25 08:57:35 +03:00
abdus
cef6b867c5
feat(crop-borders): detect and crop uniform image borders
2026-06-25 08:55:14 +03:00
abdus
630e6896d9
feat(download-google-font): fetch subsetted fonts and local css
2026-06-25 08:55:14 +03:00
abdus
36c4ae4ae9
feat(encode-comparison): encode middle clip across CRF values
2026-06-25 08:55:14 +03:00
abdus
bca459db49
feat(pdf-to-jpg): convert pdf pages to resized jpgs
2026-06-25 08:55:14 +03:00
abdus
b20433564d
feat(hardcode-subs): add subtitle burn-in helper
2026-06-25 08:55:14 +03:00
abdus
6d41173c18
feat(gigapixel): add CLI wrapper with progress parsing
2026-06-25 08:55:13 +03:00
abdus
abd8de870e
feat(embed-subs): batch embed language-tagged subtitle files
2026-06-25 08:55:13 +03:00
abdus
0a9ddbf8af
feat(download-imageset): add unified download and image postprocess flow
2026-06-25 08:55:13 +03:00
abdus
c0d9c90c7c
feat(upload-images-to-immich): add server and api key flags
2026-06-25 08:46:52 +03:00
abdus
c199fe1c36
feat(transmission): add wait and path reporting
2026-06-25 08:46:52 +03:00
abdus
c584265235
feat(subtitle-translator): add contextual chunk translation
2026-06-25 08:46:51 +03:00
abdus
7735c3d426
chore(scan-vids): switch db target and logs
2026-06-25 08:46:51 +03:00
abdus
311eff8f14
feat(rename-children): add optional flatten mode
2026-06-25 08:46:51 +03:00
abdus
dda2c6230f
feat(multi-rename): add safer move and trash flow
2026-06-25 08:46:51 +03:00
abdus
4a7bf663ab
fix(file-renamer): tighten short-date matching
2026-06-25 08:46:51 +03:00
abdus
c3634f1d67
feat(extract-archives): add zip handling and find mode
2026-06-25 08:46:51 +03:00
abdus
fa69acf6f7
chore(clean-vids): refresh remote delete workflow
2026-06-25 08:46:51 +03:00
abdus
f1a6835974
fix(process-new-videos): call snot scan command
2026-06-25 08:46:51 +03:00
abdus
c5f82527b9
fix(oba): update token parsing and defaults
2026-06-25 08:46:51 +03:00
abdus
40daa54167
chore(fpup): run script via uv
2026-06-25 08:46:51 +03:00
abdus
2515e0e5d1
fix(alldebrid): reduce magnet poll frequency
2026-06-25 08:46:51 +03:00
abdus
fbbd0a4763
feat(chat): Add image paste support
...
Paste images into the textarea to attach them to a message. Pending
images show as thumbnails above the input with a × remove button.
Images are sent to all three providers (OpenAI image_url, Anthropic
image_url via compat endpoint, Gemini inline_data).
2026-04-09 22:48:23 +02:00
abdus
db89164aeb
refactor(chat): Move under chat dir
2026-04-09 10:00:31 +02:00
abdus
3c6bfa1aaa
feat: Add Youtube video summarizer
2026-04-05 09:45:32 +02:00
abdus
883c192034
feat(chat): Add Youtube URLs as context
2026-01-18 14:13:39 +01:00
abdus
a06913ba63
fix(chat): Keep 1 history entry per session
2025-12-28 21:15:29 +01:00
abdus
5655b88b31
fix(chat): Copy buttons working again
2025-12-27 19:57:49 +01:00
abdus
4e8ebc040c
fix(chat): Gemini client not reading JSON stream correctly
2025-12-24 23:00:14 +01:00
abdus
908bcce9f3
feat(chat): Proper light/dark theme
2025-12-23 18:47:20 +01:00
abdus
5df03146ba
refactor(chat): Replace markdown parser
2025-12-23 18:42:14 +01:00
abdus
348c5874be
refactor(chat): Use Alpine.js
2025-12-23 10:52:43 +01:00
abdus
9008048c70
feat(chat): History and restore support
2025-12-23 09:01:40 +01:00
abdus
89f2d784a1
feat(chat): Copy buttons for code blocks
...
feat(chat): New models
feat(chat): Gemini with less thinking
fix(chat): Better scroll to bottom
2025-12-23 07:57:25 +01:00
abdus
a201ed62d3
fix(chat): Streaming markdown support
...
- Better auto scroll support
2025-08-29 07:34:44 +02:00
abdus
66f102abc0
feat(chat): Update models
2025-08-26 17:55:03 +02:00
abdus
3883db2074
feat: Add subtitle translator
2025-07-31 08:29:28 +02:00
abdus
02df3d3240
fix(immich): Tweak logging
2025-07-11 00:25:01 +03:00