Peter Steinberger
e8e04a49f9
docs: refresh docs site
2026-05-05 07:39:03 +01:00
Peter Steinberger
8b78a94c76
docs: rewrite readme
2026-05-05 07:04:07 +01:00
Peter Steinberger
62a7257aba
feat(contacts): add dedupe preview ( #555 )
...
Adds a read-only contacts dedupe preview command with JSON/table output, generated command docs, README/spec docs, and changelog credit for the extracted idea from #116.\n\nCo-authored-by: Rohan Patnaik <rohan-patnaik@users.noreply.github.com>
2026-05-05 06:37:36 +01:00
Peter Steinberger
e9c496efd5
feat(drive): add read-only reporting commands ( #554 )
...
Co-authored-by: Rohan Patnaik <rohan-patnaik@users.noreply.github.com>
2026-05-05 05:36:55 +01:00
Peter Steinberger
e8e1ac4635
feat(gmail): export filters as WebUI XML ( #553 )
...
* feat(gmail): export filters as WebUI XML
* fix(gmail): satisfy filter export lint
2026-05-05 04:02:53 +01:00
Peter Steinberger
3ed52354a0
docs(skill): improve gog agent guidance ( #552 )
...
Co-authored-by: Tim Pietrusky <timpietrusky@gmail.com>
2026-05-05 02:47:31 +01:00
Peter Steinberger
b836495775
feat(sheets): add conditional formatting and banding
...
Adds Google Sheets conditional formatting and alternating color banding commands, with force-guarded clears, docs, regression tests, and live Google smoke verification.\n\nCo-authored-by: gobang <50824182+codBang@users.noreply.github.com>
2026-05-05 02:14:13 +01:00
Peter Steinberger
aa7c0a2f90
feat(sheets): clear table data rows
...
Adds header-safe table data row clearing for Google Sheets tables, including --force enforcement, footer-skip range calculation, docs, tests, and live Google smoke verification.
2026-05-04 23:14:42 +01:00
Peter Steinberger
5d3b1c0980
feat(sheets): append table rows
...
Adds table-aware row appends for Google Sheets tables, including docs, generated command page, width validation, and live Google smoke verification.
2026-05-04 10:09:36 +01:00
Peter Steinberger
322695f78c
feat(sheets): add table basics
...
Adds Google Sheets table list/get/create/delete commands, local table column type validation, generated command docs, and a dedicated Sheets tables docs page.\n\nCo-authored-by: Pedro Henrique Gomes Venturott <27008096+Pedrohgv@users.noreply.github.com>
2026-05-04 09:41:02 +01:00
Peter Steinberger
b4d6f559c3
feat(docs): add rich text formatting commands
2026-05-04 08:28:38 +01:00
Peter Steinberger
7b288cc922
feat(raw): add lossless API dump commands
...
Co-authored-by: Ali Karbassi <ali@karbassi.com>
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-05-04 07:55:15 +01:00
Peter Steinberger
8b8fd09fa2
docs: add generated command pages site
2026-05-04 07:25:56 +01:00
Peter Steinberger
33284f03bb
feat(gmail): add sanitized content reads
...
Co-authored-by: urasmutlu <urasmutlu@gmail.com>
2026-05-04 07:04:45 +01:00
Peter Steinberger
d37caabdd7
feat(install): add Docker image publishing
2026-05-04 06:21:48 +01:00
Peter Steinberger
6fd874075e
feat(calendar): add event ownership transfer
2026-05-04 05:50:28 +01:00
Peter Steinberger
2e2974732f
docs(auth): clarify Google API setup boundaries
2026-05-04 05:22:52 +01:00
Peter Steinberger
f26af3adba
feat(safety): add baked safety profiles ( #536 )
...
* feat(safety): add baked safety profiles
Co-authored-by: Drew Burchfield <1084679+drewburchfield@users.noreply.github.com>
* fix(safety): narrow readonly profile parent allows
* fix(safety): verify basename safe-build outputs
* fix(backup): promote Gmail checkpoints into final manifest
* docs(safety): explain baked safety profiles
* feat(safety): filter profiled help and schema
* fix(safety): avoid help filter shadow warnings
* fix(backup): make plaintext export resilient
* docs(changelog): mention safety help filtering
* fix(backup): satisfy export lint checks
---------
Co-authored-by: Drew Burchfield <1084679+drewburchfield@users.noreply.github.com>
2026-04-29 03:35:18 +01:00
Peter Steinberger
0a5d06e98b
fix(auth): tolerate unreadable file keyring tokens
2026-04-28 09:15:19 +01:00
Peter Steinberger
77a16d10ef
feat(gmail): append send-as signatures
2026-04-28 08:40:43 +01:00
Peter Steinberger
ec3ac8daa5
docs(auth): clarify testing refresh token expiry
2026-04-28 08:22:58 +01:00
Peter Steinberger
4d585b1680
fix(auth): guard manual auth token storage
2026-04-28 08:12:43 +01:00
Peter Steinberger
1eaad2556c
feat(backup): add markdown Gmail export
2026-04-28 07:29:27 +01:00
Peter Steinberger
d51e94a8ca
docs(readme): document docs tab export
2026-04-28 06:39:58 +01:00
Peter Steinberger
539de113c1
fix(gmail): reject label slash collisions
2026-04-28 06:38:02 +01:00
Peter Steinberger
1763b3905f
fix(docs): harden tab export landing
...
Co-authored-by: Ben Lewis <johnbenjaminlewis@gmail.com>
2026-04-28 06:30:38 +01:00
Peter Steinberger
9362a7664e
docs(readme): clarify gmail trash workflow
2026-04-28 05:40:08 +01:00
Peter Steinberger
7ee069d88d
feat(backup): push gmail checkpoints asynchronously
2026-04-28 04:52:13 +01:00
Peter Steinberger
532601a0f1
fix(auth): preserve accounts across Google email renames
2026-04-28 04:01:06 +01:00
Peter Steinberger
7b9197ebd1
feat(auth): add auth doctor diagnostics
2026-04-28 02:49:38 +01:00
Peter Steinberger
8e4f5acebb
fix(drive): support stdout downloads
2026-04-28 02:26:43 +01:00
Peter Steinberger
e30d870b3f
feat(contacts): export vCards
...
Co-authored-by: Dinakar Sarbada <dinakars777@users.noreply.github.com>
2026-04-28 02:01:07 +01:00
Peter Steinberger
9d7ca4ec5f
feat(backup): checkpoint long gmail fetches
2026-04-28 01:41:58 +01:00
Chris Sanchez
d047a0325f
feat(slides): add insert-text and replace-text commands
...
Thin wrappers around presentations.batchUpdate for surgical text edits on
an existing deck.
- insert-text inserts text into a page element by objectId, with
--insertion-index, --replace (emits DeleteText+InsertText), and
stdin support via '-'.
- replace-text runs ReplaceAllText across the deck, with --match-case
and repeatable --page for slide-scoped replacements.
Both honor the global --dry-run (prints the batchUpdate request body as
JSON without calling the API) and --json (emits the full
BatchUpdatePresentationResponse). Plain output gives a one-line
confirmation with revisionId + replies/replaced count. Style mirrors
existing update-notes and replace-slide commands.
2026-04-28 01:10:16 +01:00
Peter Steinberger
65db353926
fix(docs): format markdown append writes
...
Co-authored-by: Eric Liu <eric@ericxliu.me>
2026-04-27 23:36:18 +01:00
Peter Steinberger
6e0af2c463
test(gmail): cover html body-format search
2026-04-27 22:42:45 +01:00
Peter Steinberger
3236577249
docs(readme): document drive search scopes and docs tabs
2026-04-27 22:37:59 +01:00
Peter Steinberger
28d9e9873a
feat(cli): improve google api hints and upload/timezone handling
2026-04-27 20:29:39 +01:00
Peter Steinberger
b8f53df696
perf(backup): stream gmail backup shards
2026-04-27 13:13:52 +01:00
Peter Steinberger
ff5e85b159
feat(backup): resume full gmail backups
2026-04-27 13:02:43 +01:00
Peter Steinberger
eb6886633d
fix(backup): bound drive content exports
2026-04-27 12:42:34 +01:00
Peter Steinberger
efc3df2ed8
feat(backup): expand google backup coverage
2026-04-27 12:09:37 +01:00
Peter Steinberger
6430dd1a99
fix(secrets): time out macOS keyring operations
...
Co-authored-by: Sardor Umarov <sardoru@gmail.com>
2026-04-27 11:22:17 +01:00
Peter Steinberger
8135cc3ff8
fix(secrets): make file keyring keys Windows-safe
...
Co-authored-by: solomonneas <srneas@gmail.com>
2026-04-27 11:20:48 +01:00
Peter Steinberger
068ff0e593
feat(backup): expand workspace backup coverage
2026-04-27 11:13:40 +01:00
Peter Steinberger
6f917ee74e
feat(backup): add workspace service adapters
2026-04-27 10:31:44 +01:00
Peter Steinberger
ee9b552dcd
feat(backup): add plaintext read and export commands
2026-04-27 10:15:26 +01:00
Peter Steinberger
e49e9f45c3
feat(backup): add encrypted Google backups
2026-04-27 09:19:06 +01:00
Peter Steinberger
acb40a8152
feat(sheets): add chart commands
...
Co-authored-by: Andrea Bergonzo <andybergon@gmail.com>
2026-04-20 20:41:15 +01:00
Peter Steinberger
64ab3772bf
feat(gmail,contacts): land label style and contact gender
...
Co-authored-by: iskkw9973 <ishikawam.dev@gmail.com>
Co-authored-by: klodr <klodr@users.noreply.github.com>
2026-04-20 19:17:47 +01:00