socialcli 0.3.1__tar.gz → 0.3.2__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {socialcli-0.3.1 → socialcli-0.3.2}/.gitignore +3 -0
- socialcli-0.3.2/LICENSE +48 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/PKG-INFO +11 -12
- {socialcli-0.3.1 → socialcli-0.3.2}/README.md +6 -4
- socialcli-0.3.2/pyproject.toml +183 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/ui/assets/agents.md +3 -3
- socialcli-0.3.1/pyproject.toml +0 -51
- socialcli-0.3.1/socialctl/connection_service/__main__.py +0 -33
- socialcli-0.3.1/socialctl/connection_service/app.py +0 -496
- socialcli-0.3.1/socialctl/connection_service/assets/PLATFORM-LOGOS-LICENSE.txt +0 -50
- socialcli-0.3.1/socialctl/connection_service/assets/connection.css +0 -75
- socialcli-0.3.1/socialctl/connection_service/assets/facebook.webp +0 -0
- socialcli-0.3.1/socialctl/connection_service/assets/instagram.svg +0 -194
- socialcli-0.3.1/socialctl/connection_service/assets/socialcli-logo.png +0 -0
- socialcli-0.3.1/socialctl/connection_service/assets/tiktok.png +0 -0
- socialcli-0.3.1/socialctl/connection_service/assets/youtube.svg +0 -1
- socialcli-0.3.1/socialctl/connection_service/landing.py +0 -146
- socialcli-0.3.1/socialctl/connection_service/legacy.py +0 -48
- socialcli-0.3.1/socialctl/connection_service/peer.py +0 -13
- socialcli-0.3.1/socialctl/connection_service/providers.py +0 -324
- socialcli-0.3.1/socialctl/connection_service/settings.py +0 -76
- socialcli-0.3.1/socialctl/connection_service/store.py +0 -124
- socialcli-0.3.1/socialctl/connections/__init__.py +0 -0
- socialcli-0.3.1/socialctl/saas/__init__.py +0 -1
- socialcli-0.3.1/socialctl/saas/access.py +0 -75
- socialcli-0.3.1/socialctl/saas/auth.py +0 -213
- socialcli-0.3.1/socialctl/saas/backup.py +0 -124
- socialcli-0.3.1/socialctl/saas/billing.py +0 -327
- socialcli-0.3.1/socialctl/saas/billing_enrollment.py +0 -1237
- socialcli-0.3.1/socialctl/saas/billing_enrollment_schema.py +0 -519
- socialcli-0.3.1/socialctl/saas/billing_inventory.py +0 -775
- socialcli-0.3.1/socialctl/saas/billing_reconcile.py +0 -127
- socialcli-0.3.1/socialctl/saas/billing_routes.py +0 -27
- socialcli-0.3.1/socialctl/saas/budget.py +0 -66
- socialcli-0.3.1/socialctl/saas/connections.py +0 -375
- socialcli-0.3.1/socialctl/saas/consent.py +0 -52
- socialcli-0.3.1/socialctl/saas/lifecycle.py +0 -344
- socialcli-0.3.1/socialctl/saas/mail.py +0 -89
- socialcli-0.3.1/socialctl/saas/maintenance.py +0 -68
- socialcli-0.3.1/socialctl/saas/meta_user.py +0 -298
- socialcli-0.3.1/socialctl/saas/meta_webhooks.py +0 -358
- socialcli-0.3.1/socialctl/saas/migration.py +0 -107
- socialcli-0.3.1/socialctl/saas/models.py +0 -8
- socialcli-0.3.1/socialctl/saas/operations.py +0 -102
- socialcli-0.3.1/socialctl/saas/pages.py +0 -126
- socialcli-0.3.1/socialctl/saas/pairing.py +0 -160
- socialcli-0.3.1/socialctl/saas/permissions.py +0 -78
- socialcli-0.3.1/socialctl/saas/reminders.py +0 -128
- socialcli-0.3.1/socialctl/saas/renewal.py +0 -74
- socialcli-0.3.1/socialctl/saas/restore_guard.py +0 -229
- socialcli-0.3.1/socialctl/saas/revocation.py +0 -97
- socialcli-0.3.1/socialctl/saas/rotation.py +0 -114
- socialcli-0.3.1/socialctl/saas/routes.py +0 -221
- socialcli-0.3.1/socialctl/saas/settings.py +0 -44
- socialcli-0.3.1/socialctl/saas/store.py +0 -106
- socialcli-0.3.1/socialctl/saas/temporary_media.py +0 -245
- socialcli-0.3.1/socialctl/saas/webhooks.py +0 -76
- socialcli-0.3.1/socialctl/ui/assets/components.css +0 -20
- socialcli-0.3.1/socialctl/ui/assets/connection-layout.css +0 -53
- socialcli-0.3.1/socialctl/ui/assets/otp.template.html +0 -10
- socialcli-0.3.1/socialctl/ui/assets/tokens.css +0 -1
- socialcli-0.3.1/socialctl/ui/assets/trial.template.html +0 -11
- socialcli-0.3.1/socialctl/ui/assets/web-layout.css +0 -38
- socialcli-0.3.1/socialctl/ui/email/otp.html +0 -10
- socialcli-0.3.1/socialctl/ui/email/trial.html +0 -11
- /socialcli-0.3.1/LICENSE → /socialcli-0.3.2/LICENSE-MIT-LEGACY +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/__init__.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/__main__.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/adapters/__init__.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/adapters/base.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/adapters/errores.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/adapters/facebook.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/adapters/instagram.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/adapters/tiktok.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/adapters/youtube.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/agent_errors.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/agent_guide.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/approval_cli.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/auth.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/authflow.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/brands.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/capabilities.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/capabilities.yml +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/cli.py +0 -0
- {socialcli-0.3.1/socialctl/connection_service → socialcli-0.3.2/socialctl/connections}/__init__.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/connections/account_cli.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/connections/cli.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/connections/client.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/connections/credential_cli.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/connections/credential_store.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/connections/file_store.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/connections/keychain.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/connections/meta_user.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/connections/rotation_cli.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/connections/saas_client.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/connections/temporary_media.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/delivery_options.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/engagement.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/engagement_cli.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/executor.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/formatter.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/hosted_media.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/identity.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/inbox.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/inbox_cli.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/inventory.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/inventory_cli.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/inventory_sources.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/management/__init__.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/management/batch_cli.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/management/batches.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/management/changes.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/management/cli.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/management/comments_cli.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/management/community_batch_cli.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/management/community_batches.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/management/community_changes.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/management/community_cli.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/management/community_schema.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/management/facebook_groups.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/management/groups_cli.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/management/inbox_readers.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/management/meta_changes.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/management/meta_cli.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/management/meta_client.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/management/meta_comment_inbox.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/management/meta_comments.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/management/meta_errors.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/management/meta_pagination.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/management/meta_schema.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/management/meta_webhooks.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/management/metadata_parts.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/management/owned_assets.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/management/owned_changes.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/management/owned_cli.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/management/owned_reorder.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/management/owned_schema.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/management/reply_context.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/management/reply_evidence.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/management/resource_changes.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/management/resource_cli.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/management/snippet_readback.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/management/stories.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/management/stories_cli.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/management/youtube.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/management/youtube_community.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/management/youtube_metadata.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/management/youtube_owned.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/management/youtube_resources.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/media.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/media_cli.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/media_ingress.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/media_preflight.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/media_registry.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/media_requirements.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/metricas/__init__.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/metricas/almacen.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/metricas/analytics_changes.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/metricas/analytics_cli.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/metricas/analytics_client.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/metricas/analytics_ingest.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/metricas/analytics_schema.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/metricas/base.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/metricas/facebook.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/metricas/insights.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/metricas/instagram.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/metricas/modelos.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/metricas/piezas.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/metricas/reach.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/metricas/reporting_client.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/metricas/resumen.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/metricas/slugs.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/metricas/tiktok.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/metricas/youtube.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/migration_cli.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/migration_files.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/models.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/native_schedule/__init__.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/native_schedule/api_delivery.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/native_schedule/api_reconcile.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/native_schedule/approval.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/native_schedule/cadence.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/native_schedule/cli.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/native_schedule/dispatcher.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/native_schedule/facebook.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/native_schedule/facebook_reels.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/native_schedule/first_comment.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/native_schedule/handoff.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/native_schedule/instagram_delivery.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/native_schedule/instagram_runtime.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/native_schedule/inventory.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/native_schedule/migration.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/native_schedule/models.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/native_schedule/reconcile.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/native_schedule/remote_data.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/native_schedule/report.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/native_schedule/store.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/native_schedule/verification.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/native_schedule/youtube.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/operation_output.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/plantillas/accounts.yml +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/plantillas/brand.md +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/plantillas/estrategia.md +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/postfile.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/preflight.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/publication_policy.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/publication_status.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/publication_steps.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/publish_output.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/publisher.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/queue_migration.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/read_budget.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/read_reports.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/rutas.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/schedule_remote.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/schedule_sqlite.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/scheduler.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/scheduler_launchd.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/scheduler_systemd.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/source_links.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/ui/__init__.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/ui/assets/agent-manual.md +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/upload_consent.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/workspace.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/youtube_data.py +0 -0
- {socialcli-0.3.1 → socialcli-0.3.2}/socialctl/youtube_data_service.py +0 -0
socialcli-0.3.2/LICENSE
ADDED
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
SocialCli Proprietary Software License
|
|
2
|
+
Version 1 — October 24, 2026
|
|
3
|
+
Copyright (c) 2026 Engels Florentino. All rights reserved.
|
|
4
|
+
SocialCli is operated by Florentino.pro.
|
|
5
|
+
|
|
6
|
+
1. Scope
|
|
7
|
+
This license applies to SocialCli releases beginning with version 0.3.2 and
|
|
8
|
+
subsequent releases that include this license. It does not revoke or restrict
|
|
9
|
+
rights already granted for earlier MIT-licensed releases. The historical MIT
|
|
10
|
+
notice is preserved in LICENSE-MIT-LEGACY. Third-party components remain subject
|
|
11
|
+
to their own licenses; this license does not replace those terms.
|
|
12
|
+
|
|
13
|
+
2. Authorized client use
|
|
14
|
+
You may download, install, run and make necessary backup copies of the official
|
|
15
|
+
SocialCli client to access the SocialCli hosted service through an authorized
|
|
16
|
+
account. You may use it for your personal or business social accounts, including
|
|
17
|
+
accounts you are authorized to manage for clients. You may let your authorized
|
|
18
|
+
AI agents operate the client under your supervision and the same account terms.
|
|
19
|
+
Service access requires an eligible trial, subscription or other access expressly
|
|
20
|
+
granted by Florentino.pro. Installing the client does not grant service access,
|
|
21
|
+
provider credentials, unlimited usage or ownership of the software.
|
|
22
|
+
|
|
23
|
+
3. Reserved rights
|
|
24
|
+
Except as expressly allowed above, required by applicable law, or separately
|
|
25
|
+
agreed in writing by the copyright holder, you may not redistribute, sublicense,
|
|
26
|
+
sell, rent or offer this software as a service; modify or use it to build or run
|
|
27
|
+
a competing product or hosted service; bypass access, subscription or security
|
|
28
|
+
controls; or remove copyright, license or attribution notices. No license to the
|
|
29
|
+
private server implementation is granted to customers. No trademark rights in
|
|
30
|
+
SocialCli or Florentino.pro are granted. You retain your rights in your content
|
|
31
|
+
and data. These restrictions do not limit rights separately granted under the
|
|
32
|
+
legacy MIT license or a third-party license.
|
|
33
|
+
|
|
34
|
+
4. Service terms
|
|
35
|
+
Use of the hosted service is also subject to https://socialcli.app/terms.html.
|
|
36
|
+
Your subscription pays for service access, not ownership of or redistribution
|
|
37
|
+
rights to the software. Account eligibility and access are determined by the
|
|
38
|
+
service, not by a local client setting.
|
|
39
|
+
|
|
40
|
+
5. Warranty and liability
|
|
41
|
+
To the maximum extent permitted by applicable law, this software is provided
|
|
42
|
+
"AS IS", without warranties of any kind, including merchantability, fitness
|
|
43
|
+
for a particular purpose and noninfringement. The copyright holder and operator
|
|
44
|
+
are not liable for indirect, incidental, special or consequential damages
|
|
45
|
+
arising from use of the software. Nothing in this license excludes or limits
|
|
46
|
+
rights, remedies or liabilities that cannot lawfully be excluded or limited.
|
|
47
|
+
|
|
48
|
+
For additional permissions, contact admin@socialcli.app.
|
|
@@ -1,22 +1,19 @@
|
|
|
1
1
|
Metadata-Version: 2.5
|
|
2
2
|
Name: socialcli
|
|
3
|
-
Version: 0.3.
|
|
3
|
+
Version: 0.3.2
|
|
4
4
|
Summary: SocialCli: publish and manage creator-owned social content from the terminal.
|
|
5
5
|
Project-URL: Homepage, https://socialcli.app
|
|
6
|
-
Project-URL:
|
|
7
|
-
Project-URL:
|
|
8
|
-
License-Expression:
|
|
6
|
+
Project-URL: Documentation, https://socialcli.app/ai-agents.html
|
|
7
|
+
Project-URL: Terms, https://socialcli.app/terms.html
|
|
8
|
+
License-Expression: LicenseRef-SocialCli-Proprietary
|
|
9
9
|
License-File: LICENSE
|
|
10
|
+
License-File: LICENSE-MIT-LEGACY
|
|
10
11
|
Requires-Python: >=3.11
|
|
11
12
|
Requires-Dist: httpx>=0.28.1
|
|
12
13
|
Requires-Dist: keyring>=25.0
|
|
13
14
|
Requires-Dist: pydantic>=2.13.5
|
|
14
15
|
Requires-Dist: pyyaml>=6.0.3
|
|
15
16
|
Requires-Dist: typer>=0.27.2
|
|
16
|
-
Provides-Extra: connection-server
|
|
17
|
-
Requires-Dist: cryptography>=43; extra == 'connection-server'
|
|
18
|
-
Requires-Dist: fastapi>=0.115; extra == 'connection-server'
|
|
19
|
-
Requires-Dist: uvicorn>=0.30; extra == 'connection-server'
|
|
20
17
|
Provides-Extra: headless-credentials
|
|
21
18
|
Requires-Dist: cryptography>=43; extra == 'headless-credentials'
|
|
22
19
|
Description-Content-Type: text/markdown
|
|
@@ -25,7 +22,7 @@ Description-Content-Type: text/markdown
|
|
|
25
22
|
|
|
26
23
|
# SocialCli
|
|
27
24
|
|
|
28
|
-
**Current
|
|
25
|
+
**Current stable version: 0.3.1 (published on PyPI). Source preparation: 0.3.2.** SocialCli SaaS is the current SocialCli
|
|
29
26
|
product. The repository root on `main` is its single development workspace;
|
|
30
27
|
the CLI, hosted connection service and account/billing components live together
|
|
31
28
|
here. Earlier versions remain in Git history for reference and migration.
|
|
@@ -61,8 +58,8 @@ Stripe uses test mode. Planned access costs
|
|
|
61
58
|
USD 10/month after 14 free days from the first successful connection. No real
|
|
62
59
|
subscriptions are collected in this pilot.
|
|
63
60
|
|
|
64
|
-
The
|
|
65
|
-
|
|
61
|
+
The current stable client is **0.3.1**, published on TestPyPI and PyPI after
|
|
62
|
+
reviewed CI, matching artifact hashes and clean-install verification.
|
|
66
63
|
The hosted service is managed and verified separately from the CLI release. The client's wheel and
|
|
67
64
|
source archive are verified against the
|
|
68
65
|
reviewed build hashes before publication. Provider commercial approvals and live
|
|
@@ -141,7 +138,9 @@ Metrics and management permissions are separate from publishing permissions. A v
|
|
|
141
138
|
|
|
142
139
|
Read [CONTRIBUTING.md](CONTRIBUTING.md). For questions or bugs, open an [issue](https://github.com/engels-florentino/SocialCli/issues) without tokens, keys, `.env` files or private logs. Report vulnerabilities through the private channel described in [SECURITY.md](SECURITY.md).
|
|
143
140
|
|
|
144
|
-
[
|
|
141
|
+
[Proprietary license](LICENSE) for 0.3.2 and later. Earlier releases retain their
|
|
142
|
+
[MIT license](LICENSE-MIT-LEGACY). The hosted server is private and is not included
|
|
143
|
+
in public client distributions. SocialCli is not affiliated with the platforms it integrates.
|
|
145
144
|
|
|
146
145
|
## Account, media and scheduling
|
|
147
146
|
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
# SocialCli
|
|
4
4
|
|
|
5
|
-
**Current
|
|
5
|
+
**Current stable version: 0.3.1 (published on PyPI). Source preparation: 0.3.2.** SocialCli SaaS is the current SocialCli
|
|
6
6
|
product. The repository root on `main` is its single development workspace;
|
|
7
7
|
the CLI, hosted connection service and account/billing components live together
|
|
8
8
|
here. Earlier versions remain in Git history for reference and migration.
|
|
@@ -38,8 +38,8 @@ Stripe uses test mode. Planned access costs
|
|
|
38
38
|
USD 10/month after 14 free days from the first successful connection. No real
|
|
39
39
|
subscriptions are collected in this pilot.
|
|
40
40
|
|
|
41
|
-
The
|
|
42
|
-
|
|
41
|
+
The current stable client is **0.3.1**, published on TestPyPI and PyPI after
|
|
42
|
+
reviewed CI, matching artifact hashes and clean-install verification.
|
|
43
43
|
The hosted service is managed and verified separately from the CLI release. The client's wheel and
|
|
44
44
|
source archive are verified against the
|
|
45
45
|
reviewed build hashes before publication. Provider commercial approvals and live
|
|
@@ -118,7 +118,9 @@ Metrics and management permissions are separate from publishing permissions. A v
|
|
|
118
118
|
|
|
119
119
|
Read [CONTRIBUTING.md](CONTRIBUTING.md). For questions or bugs, open an [issue](https://github.com/engels-florentino/SocialCli/issues) without tokens, keys, `.env` files or private logs. Report vulnerabilities through the private channel described in [SECURITY.md](SECURITY.md).
|
|
120
120
|
|
|
121
|
-
[
|
|
121
|
+
[Proprietary license](LICENSE) for 0.3.2 and later. Earlier releases retain their
|
|
122
|
+
[MIT license](LICENSE-MIT-LEGACY). The hosted server is private and is not included
|
|
123
|
+
in public client distributions. SocialCli is not affiliated with the platforms it integrates.
|
|
122
124
|
|
|
123
125
|
## Account, media and scheduling
|
|
124
126
|
|
|
@@ -0,0 +1,183 @@
|
|
|
1
|
+
[project]
|
|
2
|
+
name = "socialcli"
|
|
3
|
+
version = "0.3.2"
|
|
4
|
+
description = "SocialCli: publish and manage creator-owned social content from the terminal."
|
|
5
|
+
readme = "README.md"
|
|
6
|
+
license = "LicenseRef-SocialCli-Proprietary"
|
|
7
|
+
license-files = ["LICENSE", "LICENSE-MIT-LEGACY"]
|
|
8
|
+
requires-python = ">=3.11"
|
|
9
|
+
dependencies = [
|
|
10
|
+
"httpx>=0.28.1",
|
|
11
|
+
"keyring>=25.0",
|
|
12
|
+
"pydantic>=2.13.5",
|
|
13
|
+
"pyyaml>=6.0.3",
|
|
14
|
+
"typer>=0.27.2",
|
|
15
|
+
]
|
|
16
|
+
|
|
17
|
+
[project.scripts]
|
|
18
|
+
socialcli = "socialctl.cli:app"
|
|
19
|
+
socialctl = "socialctl.cli:app"
|
|
20
|
+
|
|
21
|
+
[project.urls]
|
|
22
|
+
Homepage = "https://socialcli.app"
|
|
23
|
+
Documentation = "https://socialcli.app/ai-agents.html"
|
|
24
|
+
Terms = "https://socialcli.app/terms.html"
|
|
25
|
+
|
|
26
|
+
[project.optional-dependencies]
|
|
27
|
+
headless-credentials = ["cryptography>=43"]
|
|
28
|
+
|
|
29
|
+
[dependency-groups]
|
|
30
|
+
dev = [
|
|
31
|
+
"cryptography>=43",
|
|
32
|
+
"fastapi>=0.115",
|
|
33
|
+
"pytest>=9.1.1",
|
|
34
|
+
"respx>=0.23.1",
|
|
35
|
+
]
|
|
36
|
+
|
|
37
|
+
[build-system]
|
|
38
|
+
requires = ["hatchling>=1.27"]
|
|
39
|
+
build-backend = "hatchling.build"
|
|
40
|
+
|
|
41
|
+
|
|
42
|
+
# Public client boundary. New modules require explicit review before distribution.
|
|
43
|
+
[tool.hatch.build]
|
|
44
|
+
only-include = [
|
|
45
|
+
"socialctl/__init__.py",
|
|
46
|
+
"socialctl/__main__.py",
|
|
47
|
+
"socialctl/agent_errors.py",
|
|
48
|
+
"socialctl/agent_guide.py",
|
|
49
|
+
"socialctl/approval_cli.py",
|
|
50
|
+
"socialctl/auth.py",
|
|
51
|
+
"socialctl/authflow.py",
|
|
52
|
+
"socialctl/brands.py",
|
|
53
|
+
"socialctl/capabilities.py",
|
|
54
|
+
"socialctl/cli.py",
|
|
55
|
+
"socialctl/delivery_options.py",
|
|
56
|
+
"socialctl/engagement.py",
|
|
57
|
+
"socialctl/engagement_cli.py",
|
|
58
|
+
"socialctl/executor.py",
|
|
59
|
+
"socialctl/formatter.py",
|
|
60
|
+
"socialctl/hosted_media.py",
|
|
61
|
+
"socialctl/identity.py",
|
|
62
|
+
"socialctl/inbox.py",
|
|
63
|
+
"socialctl/inbox_cli.py",
|
|
64
|
+
"socialctl/inventory.py",
|
|
65
|
+
"socialctl/inventory_cli.py",
|
|
66
|
+
"socialctl/inventory_sources.py",
|
|
67
|
+
"socialctl/media.py",
|
|
68
|
+
"socialctl/media_cli.py",
|
|
69
|
+
"socialctl/media_ingress.py",
|
|
70
|
+
"socialctl/media_preflight.py",
|
|
71
|
+
"socialctl/media_registry.py",
|
|
72
|
+
"socialctl/media_requirements.py",
|
|
73
|
+
"socialctl/migration_cli.py",
|
|
74
|
+
"socialctl/migration_files.py",
|
|
75
|
+
"socialctl/models.py",
|
|
76
|
+
"socialctl/operation_output.py",
|
|
77
|
+
"socialctl/postfile.py",
|
|
78
|
+
"socialctl/preflight.py",
|
|
79
|
+
"socialctl/publication_policy.py",
|
|
80
|
+
"socialctl/publication_status.py",
|
|
81
|
+
"socialctl/publication_steps.py",
|
|
82
|
+
"socialctl/publish_output.py",
|
|
83
|
+
"socialctl/publisher.py",
|
|
84
|
+
"socialctl/queue_migration.py",
|
|
85
|
+
"socialctl/read_budget.py",
|
|
86
|
+
"socialctl/read_reports.py",
|
|
87
|
+
"socialctl/rutas.py",
|
|
88
|
+
"socialctl/schedule_remote.py",
|
|
89
|
+
"socialctl/schedule_sqlite.py",
|
|
90
|
+
"socialctl/scheduler.py",
|
|
91
|
+
"socialctl/scheduler_launchd.py",
|
|
92
|
+
"socialctl/scheduler_systemd.py",
|
|
93
|
+
"socialctl/source_links.py",
|
|
94
|
+
"socialctl/upload_consent.py",
|
|
95
|
+
"socialctl/workspace.py",
|
|
96
|
+
"socialctl/youtube_data.py",
|
|
97
|
+
"socialctl/youtube_data_service.py",
|
|
98
|
+
"socialctl/adapters",
|
|
99
|
+
"socialctl/connections",
|
|
100
|
+
"socialctl/management",
|
|
101
|
+
"socialctl/metricas",
|
|
102
|
+
"socialctl/native_schedule",
|
|
103
|
+
"socialctl/plantillas",
|
|
104
|
+
"socialctl/capabilities.yml",
|
|
105
|
+
"socialctl/ui/__init__.py",
|
|
106
|
+
"socialctl/ui/assets/agents.md",
|
|
107
|
+
"socialctl/ui/assets/agent-manual.md"
|
|
108
|
+
]
|
|
109
|
+
exclude = ["**/.env", "**/.env.*", "**/*.env", "**/.secrets/**", "**/__pycache__/**", "**/*.pyc", "**/*.key", "**/*.pem", "**/*.sqlite3*"]
|
|
110
|
+
|
|
111
|
+
[tool.hatch.build.targets.wheel]
|
|
112
|
+
dev-mode-dirs = ["."]
|
|
113
|
+
|
|
114
|
+
[tool.hatch.build.targets.sdist]
|
|
115
|
+
only-include = [
|
|
116
|
+
"socialctl/__init__.py",
|
|
117
|
+
"socialctl/__main__.py",
|
|
118
|
+
"socialctl/agent_errors.py",
|
|
119
|
+
"socialctl/agent_guide.py",
|
|
120
|
+
"socialctl/approval_cli.py",
|
|
121
|
+
"socialctl/auth.py",
|
|
122
|
+
"socialctl/authflow.py",
|
|
123
|
+
"socialctl/brands.py",
|
|
124
|
+
"socialctl/capabilities.py",
|
|
125
|
+
"socialctl/cli.py",
|
|
126
|
+
"socialctl/delivery_options.py",
|
|
127
|
+
"socialctl/engagement.py",
|
|
128
|
+
"socialctl/engagement_cli.py",
|
|
129
|
+
"socialctl/executor.py",
|
|
130
|
+
"socialctl/formatter.py",
|
|
131
|
+
"socialctl/hosted_media.py",
|
|
132
|
+
"socialctl/identity.py",
|
|
133
|
+
"socialctl/inbox.py",
|
|
134
|
+
"socialctl/inbox_cli.py",
|
|
135
|
+
"socialctl/inventory.py",
|
|
136
|
+
"socialctl/inventory_cli.py",
|
|
137
|
+
"socialctl/inventory_sources.py",
|
|
138
|
+
"socialctl/media.py",
|
|
139
|
+
"socialctl/media_cli.py",
|
|
140
|
+
"socialctl/media_ingress.py",
|
|
141
|
+
"socialctl/media_preflight.py",
|
|
142
|
+
"socialctl/media_registry.py",
|
|
143
|
+
"socialctl/media_requirements.py",
|
|
144
|
+
"socialctl/migration_cli.py",
|
|
145
|
+
"socialctl/migration_files.py",
|
|
146
|
+
"socialctl/models.py",
|
|
147
|
+
"socialctl/operation_output.py",
|
|
148
|
+
"socialctl/postfile.py",
|
|
149
|
+
"socialctl/preflight.py",
|
|
150
|
+
"socialctl/publication_policy.py",
|
|
151
|
+
"socialctl/publication_status.py",
|
|
152
|
+
"socialctl/publication_steps.py",
|
|
153
|
+
"socialctl/publish_output.py",
|
|
154
|
+
"socialctl/publisher.py",
|
|
155
|
+
"socialctl/queue_migration.py",
|
|
156
|
+
"socialctl/read_budget.py",
|
|
157
|
+
"socialctl/read_reports.py",
|
|
158
|
+
"socialctl/rutas.py",
|
|
159
|
+
"socialctl/schedule_remote.py",
|
|
160
|
+
"socialctl/schedule_sqlite.py",
|
|
161
|
+
"socialctl/scheduler.py",
|
|
162
|
+
"socialctl/scheduler_launchd.py",
|
|
163
|
+
"socialctl/scheduler_systemd.py",
|
|
164
|
+
"socialctl/source_links.py",
|
|
165
|
+
"socialctl/upload_consent.py",
|
|
166
|
+
"socialctl/workspace.py",
|
|
167
|
+
"socialctl/youtube_data.py",
|
|
168
|
+
"socialctl/youtube_data_service.py",
|
|
169
|
+
"socialctl/adapters",
|
|
170
|
+
"socialctl/connections",
|
|
171
|
+
"socialctl/management",
|
|
172
|
+
"socialctl/metricas",
|
|
173
|
+
"socialctl/native_schedule",
|
|
174
|
+
"socialctl/plantillas",
|
|
175
|
+
"socialctl/capabilities.yml",
|
|
176
|
+
"socialctl/ui/__init__.py",
|
|
177
|
+
"socialctl/ui/assets/agents.md",
|
|
178
|
+
"socialctl/ui/assets/agent-manual.md",
|
|
179
|
+
"pyproject.toml",
|
|
180
|
+
"README.md",
|
|
181
|
+
"LICENSE",
|
|
182
|
+
"LICENSE-MIT-LEGACY"
|
|
183
|
+
]
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
# SocialCli for AI agents — 0.3.
|
|
1
|
+
# SocialCli for AI agents — 0.3.2
|
|
2
2
|
|
|
3
3
|
For Muse, Grok bot, Codex, Claude, Gemini and other terminal-enabled agents.
|
|
4
4
|
Requires a persistent workspace, Python 3.11+, macOS/Linux and protected storage.
|
|
5
5
|
SocialCli is a CLI, not an MCP server.
|
|
6
6
|
|
|
7
|
-
Read https://pypi.org/pypi/socialcli/0.3.
|
|
8
|
-
`socialcli`, version `0.3.
|
|
7
|
+
Read https://pypi.org/pypi/socialcli/0.3.2/json. Require HTTP 200, name
|
|
8
|
+
`socialcli`, version `0.3.2`. Download only `socialcli-0.3.2-py3-none-any.whl`
|
|
9
9
|
from its HTTPS URL and verify `digests.sha256`. Install that local wheel with
|
|
10
10
|
`[headless-credentials]` in an isolated uv tool/venv; dependencies come from PyPI.
|
|
11
11
|
Stop if unavailable. Never substitute packages or silently replace an install.
|
socialcli-0.3.1/pyproject.toml
DELETED
|
@@ -1,51 +0,0 @@
|
|
|
1
|
-
[project]
|
|
2
|
-
name = "socialcli"
|
|
3
|
-
version = "0.3.1"
|
|
4
|
-
description = "SocialCli: publish and manage creator-owned social content from the terminal."
|
|
5
|
-
readme = "README.md"
|
|
6
|
-
license = "MIT"
|
|
7
|
-
requires-python = ">=3.11"
|
|
8
|
-
dependencies = [
|
|
9
|
-
"httpx>=0.28.1",
|
|
10
|
-
"keyring>=25.0",
|
|
11
|
-
"pydantic>=2.13.5",
|
|
12
|
-
"pyyaml>=6.0.3",
|
|
13
|
-
"typer>=0.27.2",
|
|
14
|
-
]
|
|
15
|
-
|
|
16
|
-
[project.scripts]
|
|
17
|
-
socialcli = "socialctl.cli:app"
|
|
18
|
-
socialctl = "socialctl.cli:app"
|
|
19
|
-
|
|
20
|
-
[project.urls]
|
|
21
|
-
Homepage = "https://socialcli.app"
|
|
22
|
-
Repository = "https://github.com/engels-florentino/SocialCli"
|
|
23
|
-
Issues = "https://github.com/engels-florentino/SocialCli/issues"
|
|
24
|
-
|
|
25
|
-
[project.optional-dependencies]
|
|
26
|
-
headless-credentials = ["cryptography>=43"]
|
|
27
|
-
connection-server = [
|
|
28
|
-
"cryptography>=43",
|
|
29
|
-
"fastapi>=0.115",
|
|
30
|
-
"uvicorn>=0.30",
|
|
31
|
-
]
|
|
32
|
-
|
|
33
|
-
[dependency-groups]
|
|
34
|
-
dev = [
|
|
35
|
-
"cryptography>=43",
|
|
36
|
-
"fastapi>=0.115",
|
|
37
|
-
"pytest>=9.1.1",
|
|
38
|
-
"respx>=0.23.1",
|
|
39
|
-
]
|
|
40
|
-
|
|
41
|
-
[build-system]
|
|
42
|
-
requires = ["hatchling"]
|
|
43
|
-
build-backend = "hatchling.build"
|
|
44
|
-
|
|
45
|
-
[tool.hatch.build.targets.wheel]
|
|
46
|
-
packages = ["socialctl"]
|
|
47
|
-
|
|
48
|
-
# Do not rely on VCS ignore discovery inside a linked worktree for sdist safety.
|
|
49
|
-
[tool.hatch.build.targets.sdist]
|
|
50
|
-
only-include = ["socialctl", "pyproject.toml", "README.md", "LICENSE"]
|
|
51
|
-
exclude = ["**/.env", "**/.env.*", "**/*.env", "**/.secrets/**", "**/__pycache__/**", "**/*.pyc", "**/*.key", "**/*.pem", "**/*.sqlite3*"]
|
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
"""Run the separately configured connection service, never a publication worker."""
|
|
2
|
-
import logging
|
|
3
|
-
import os
|
|
4
|
-
import sys
|
|
5
|
-
import time
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
def main():
|
|
9
|
-
import uvicorn
|
|
10
|
-
from socialctl.connection_service.app import create_app
|
|
11
|
-
from socialctl.connection_service.settings import Settings
|
|
12
|
-
|
|
13
|
-
# Callback query strings and outbound OAuth payloads must not enter logs.
|
|
14
|
-
for name in ('httpx', 'httpcore'):
|
|
15
|
-
logging.getLogger(name).disabled = True
|
|
16
|
-
settings = Settings.from_environment()
|
|
17
|
-
if sys.argv[1:] == ['--prune']:
|
|
18
|
-
from socialctl.connection_service.store import Store
|
|
19
|
-
vault = Store(settings.database, settings.encryption_keys)
|
|
20
|
-
with vault.transaction() as db:
|
|
21
|
-
vault.purge(db, now=time.time())
|
|
22
|
-
print('Expired connection records pruned.')
|
|
23
|
-
return
|
|
24
|
-
if sys.argv[1:]:
|
|
25
|
-
raise SystemExit('Usage: python -m socialctl.connection_service [--prune]')
|
|
26
|
-
app = create_app(settings)
|
|
27
|
-
uvicorn.run(app, host=os.environ.get('SOCIALCLI_BIND', '127.0.0.1'),
|
|
28
|
-
port=int(os.environ.get('SOCIALCLI_PORT', '8787')), workers=1,
|
|
29
|
-
access_log=False, proxy_headers=False)
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
if __name__ == '__main__':
|
|
33
|
-
main()
|