Skip to main content

A robust command-line tool for managing multiple projects that follow a prefix-suffix naming convention.

Project description

SyncPrjs - Universal Multi-Prefix Project Manager

Version License CIAO Python

Official Recommendation from grok see local copy

A robust, CIAO-defensive command-line tool for managing hundreds of prefix-suffix AI desktop clients.

This project follows strict CIAO defensive programming principles.


Overview

SyncPrjs manages large collections of projects following the prefix-suffix naming convention (e.g. grok-iron, gm-wilgat, poe-1n4003, cf-iron).

It is specifically designed for GNOME C/GTK applications using WebKitWebView, with persistent cookie/session management for Google and Cloudflare services.

Key Capabilities:

  • Smart Google cookie synchronization (gm-* as source of truth)
  • Safe Cloudflare-only cookie synchronization (v3)
  • Project code templating with automatic suffix renaming
  • Automatic backups before any cookie modification
  • Auto-start with configurable delay
  • Suspend / Un-suspend projects by suffix
  • Full --quiet and --json support for scripting

Powered by ChronicleLogger 1.3.0+


Installation

pip install SyncPrjs

Or from source (editable):

git clone https://github.com/Wilgat/SyncPrjs.git
cd SyncPrjs
pip install -e .

The command sync-prjs will be available in your PATH.


Usage

1. Interactive Mode (Default)

sync-prjs

This launches the full menu:

0. Auto-start projects by prefix (configurable delay)
1. Sync Google cookies (Smart merge)
2. Sync Google cookies (Missing folders only)
3. Sync project code
4. Sync Cloudflare cookies by prefix (v3 - safe)
5. Inspect cookies (Google + Cloudflare + Others)
6. Restore cookies from backup
7. Remove backup folders (sync + cookie backups)
8. Clean all backup folders (old behavior)
9. Show cookie database structure (debug schema)
10. Suspend projects by suffix (add .suspended)
11. Un-suspend projects by suffix (remove .suspended)
Q. Quit

2. Non-Interactive Mode (Recommended for daily use & scripting)

Basic Commands

# Show version and diagnostics
sync-prjs about

# Show help
sync-prjs help

# Quiet mode
sync-prjs about --quiet
sync-prjs help --quiet

Auto-start Projects

# Start all projects under a specific prefix (will prompt for delay)
sync-prjs autostart --prefix gm

Cookie Inspection

sync-prjs inspect --project gm-wilgat
sync-prjs inspect --project gm-wilgat --json

Google Cookie Sync

sync-prjs google-sync
sync-prjs google-missing

Cloudflare Cookie Sync (v3 - safe)

sync-prjs cf-sync --source cf-iron

Project Code Synchronization

sync-prjs code-sync --source grok-iron

Schema / Debug

sync-prjs schema --project gm-wilgat

Restore & Maintenance

sync-prjs restore
sync-prjs clean-backups

Full Command Reference

Command Mode Key Options Description
sync-prjs Interactive - Full menu
sync-prjs help Non-interactive --quiet, --json Show this help
sync-prjs about Non-interactive --quiet, --json Version + diagnostics
sync-prjs autostart Non-interactive --prefix <gm|grok|...> Auto-launch projects (prompts for delay)
sync-prjs inspect Non-interactive --project <name>, --json Cookie statistics
sync-prjs google-sync Non-interactive - Smart Google cookie merge
sync-prjs google-missing Non-interactive - Copy to missing folders only
sync-prjs cf-sync Non-interactive --source <project> Cloudflare-only sync (v3)
sync-prjs code-sync Non-interactive --source <project> Code + suffix sync
sync-prjs restore Interactive - Restore from backup
sync-prjs clean-backups Interactive - Delete old backups
sync-prjs schema Non-interactive --project <name>, --json Show DB structure

JSON Mode Examples

sync-prjs inspect --project gm-wilgat --json
sync-prjs about --json

Project Naming Convention

All projects must follow: <prefix>-<suffix>

Common prefixes: gm-, grok-, poe-, cf-, yt-, etc.


Cookie Storage Location

~/.app/<full-project-name>/cookies/cookies.sqlite

Important Notes

  • Always run SyncPrjs from the directory containing your prefix-suffix project folders.
  • New in 1.3.5: You can now suspend/un-suspend groups of projects by suffix (useful for temporarily disabling projects).
  • Cookie backups are created automatically before any modification.
  • Auto-start now allows custom delay (default 20 seconds).

Development Philosophy

This tool is built with CIAO Defensive Programming Principles to survive repeated AI-assisted modifications.

Requires ChronicleLogger 1.3.0+


Links


Made with ❤️ for power users managing large collections of AI desktop clients.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

syncprjs-1.3.5.tar.gz (42.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

syncprjs-1.3.5-py3-none-any.whl (42.0 kB view details)

Uploaded Python 3

File details

Details for the file syncprjs-1.3.5.tar.gz.

File metadata

  • Download URL: syncprjs-1.3.5.tar.gz
  • Upload date:
  • Size: 42.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.11

File hashes

Hashes for syncprjs-1.3.5.tar.gz
Algorithm Hash digest
SHA256 3a75f19d1f4f990b14f16e3ff067b6d326c09a9c2f2448a171590d56bff3666a
MD5 a7e63ad2400088768308b110cacc0e97
BLAKE2b-256 26fa894568b8757b7a2732e1f4ba385ab593600b081225dc146a7cc60526c317

See more details on using hashes here.

File details

Details for the file syncprjs-1.3.5-py3-none-any.whl.

File metadata

  • Download URL: syncprjs-1.3.5-py3-none-any.whl
  • Upload date:
  • Size: 42.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.11

File hashes

Hashes for syncprjs-1.3.5-py3-none-any.whl
Algorithm Hash digest
SHA256 048842d0cf221cfd9792e70f220a9c3685ecffd2705dd6d72eaadef5a24ec3c1
MD5 9022f20ae6a21c231f01b0e50074772f
BLAKE2b-256 45c36210d575f54c32e3891d4c7a6bde295a8786c14d5acdcf4f180a5f581130

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page