Skip to content

feat(cli): implement social post command and persist iterate goals#162

Open
emil07770 wants to merge 1 commit into
profullstack:masterfrom
emil07770:feat/implement-social-post-command
Open

feat(cli): implement social post command and persist iterate goals#162
emil07770 wants to merge 1 commit into
profullstack:masterfrom
emil07770:feat/implement-social-post-command

Conversation

@emil07770
Copy link
Copy Markdown
Contributor

Closes #151
Closes #152

Changes

sh1pt promote social post (#151)

Replaces the [stub] action with a real adapter fan-out:

  • Builds a SocialPost from --body, --title, --hashtags, --media, --link, --schedule
  • --platform selects a subset; defaults to all platforms in SOCIAL_PLATFORMS
  • --dry-run prints a per-platform preview (body length, hashtags, link) without connecting
  • Live run: lazy-loads @profullstack/sh1pt-social-<name> via loadInstalledPackage, reads saved adapter config via getAdapterConfig, calls connect() then post()
  • Skips platforms that are not installed or not configured, printing a helpful hint
  • Adds inferMediaKind helper that infers image / video / gif from file extension

sh1pt iterate goals (#152)

Replaces the [stub] with full persistence backed by ~/.config/sh1pt/iterate-goals.json:

  • No args: lists current goals (or prints a hint if none are set)
  • key=value args: set one or more goals and save
  • --unset <key>: remove a single goal
  • --clear: wipe all goals
  • --json: machine-readable output when listing
  • File is written atomically via a .tmp + rename pattern, matching config-store.ts

- promote social post: replace stub with real adapter fan-out; loads each
  social-<name> package, calls connect() then post(); dry-run shows
  per-platform preview with truncation; skips platforms not installed or
  not configured with a helpful hint (closes profullstack#151)
- iterate goals: replace stub with persistent read/write backed by
  ~/.config/sh1pt/iterate-goals.json; supports listing, setting
  key=value pairs, --unset <key>, --clear, and --json output
  (closes profullstack#152)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Persist iterate goals between CLI runs Implement adapter-backed social post command

1 participant