Come ottengo la CLI Styrar?
Accedi al tuo dashboard Styrar — la CLI e le istruzioni di installazione aggiornate per la tua piattaforma sono disponibili per gli spazi di lavoro Team e Agency che hanno effettuato l'accesso.
Interfaccia a riga di comando
La CLI Styrar mette ogni azione dello spazio di lavoro — post, link, pagine bio, campagne, analytics — dietro un unico comando `styrar`. Accedi al tuo dashboard per ottenere la tua API key e la CLI. Ogni comando è generato direttamente dallo stesso catalogo di strumenti che il server MCP Styrar espone agli assistenti IA, quindi uno script scritto oggi si comporta esattamente come l'azione IA equivalente.
Alcuni dei comandi generati:
Ogni comando qui sotto viene eseguito dal terminale — organizzato per categoria, generato dallo stesso catalogo del server MCP Styrar.
styrar list-social-accountsList connected Instagram, X (Twitter), TikTok, LinkedIn, YouTube, Threads, Facebook, and other social accounts. Optional companyId for company scope.styrar create-linkCreate a shortened URL with optional title, shortCode, company scope, expiresAt, activeFrom, campaignIds, linkGroupId, tagIds, customDomainId, qrStyle, and custom OG fields (ogTitle, ogDescription, ogImageUrl, ogInterstitialEnabled).styrar list-linksList shortened URLs; filter by companyId, campaignId, linkGroupId, tagId, or unassigned (no campaign).styrar get-linkFetch a single short link by linkId including click count and campaign metadata.styrar update-linkUpdate a short link: originalUrl, title, isActive, activeFrom, expiresAt, campaignId/campaignIds, linkGroupId, tagIds, qrStyle, and custom OG fields.styrar delete-linkPermanently delete a short link by linkId.styrar list-link-groupsList link groups (folders) for personal or company scope.styrar create-link-groupCreate a link group/folder with title and optional companyId or campaignId.styrar update-link-groupRename a link group by groupId.styrar delete-link-groupDelete a link group; links in the folder become unassigned.styrar list-link-tagsList tags used to label short links in personal or company scope.styrar create-link-tagCreate a link tag by name in personal or company scope.styrar update-link-tagRename a link tag by tagId.styrar delete-link-tagDelete a link tag and remove it from assigned links.styrar list-link-routing-rulesList geo/device routing rules that redirect visitors to alternate destination URLs.styrar create-link-routing-ruleAdd a geo or device rule mapping conditions to an HTTPS destinationUrl.styrar update-link-routing-ruleUpdate priority, conditions, destination URL, or active state on a link routing rule.styrar delete-link-routing-ruleRemove a geo/device routing rule from a short link.styrar get-link-experimentFetch the A/B experiment on a short link (variants, weights, status, click counts).styrar update-link-experimentCreate or replace a draft link experiment with HTTPS destinationUrl variants and weights.styrar delete-link-experimentRemove the A/B experiment configuration from a short link.styrar control-link-experimentStart, pause, or complete a link A/B experiment. Pass winningVariantId when completing.styrar bulk-create-linksCreate up to 100 links from a links array or CSV string. Set upsert true for idempotent shortCode imports.styrar bulk-update-linksUpdate up to 100 links in one request via an updates array (each entry needs id).styrar bulk-delete-linksDelete multiple short links by linkIds in personal or company scope.styrar import-link-ogScrape og:title, og:description, and og:image from the link destination URL into custom OG fields.styrar get-link-qrReturn short link QR metadata (shortCode, qrStyle). Binary PNG/SVG download uses the dashboard or GET /v1/links/:id/qr.styrar get-link-analyticsAggregated click counts across all short links; optional companyId and date range (from, to).styrar get-link-analytics-by-idClick analytics for a single linkId; optional date range (from, to).styrar create-postCreate a DRAFT or SCHEDULED social post across Instagram, LinkedIn, X, TikTok, YouTube, and more. Use scheduledAt to schedule—no separate schedule_post tool. Call list_social_accounts first for socialAccountId in each target.styrar list-postsList posts with optional filters—status (DRAFT, SCHEDULED, PUBLISHED, FAILED), companyId, date range (from, to), page, limit.styrar get-postFetch a single post by postId including platform targets, approval status, media files, and analytics.styrar update-postUpdate a DRAFT or SCHEDULED post by postId. Editable fields: content, title, scheduledAt, status, campaignId, brandId, tags, mediaFileIds.styrar delete-postPermanently delete a post by postId (must be DRAFT, SCHEDULED, or FAILED).styrar list-saved-mentionsList workspace saved @mentions with per-platform handles for compose and publish substitution.styrar create-saved-mentionCreate or upsert a saved @mention with optional per-platform handles (X, LinkedIn, etc.).styrar update-saved-mentionUpdate a saved mention name or platformHandles by mentionId.styrar delete-saved-mentionDelete a workspace saved mention by mentionId.styrar list-bio-pagesList bio pages for personal or company scope; includes live version and custom domain metadata.styrar get-bio-pageFetch one bio page by id, including live blocks and custom domain details.styrar create-bio-pageCreate a new bio page with title and optional company scope.styrar update-bio-pageUpdate bio page settings: title, custom tenantSlug, allowCustomSlug, trackingConfig (GA/GTM/pixels), and cookiePolicy banner when tracking is enabled.styrar delete-bio-pageDelete a bio page and linked sentinel click-tracking link.styrar list-bio-versionsList versions for a specific bio page id.styrar create-bio-versionSave a new bio page version draft with theme, pages, pageMeta, and chrome blocks. Set copyFromSource true to clone the latest locale version.styrar delete-bio-versionDelete a saved bio version. Cannot delete the only version on a page.styrar publish-bio-versionPublish a specific version id as the live bio page.styrar get-bio-blocksList blocks for a bio page version, optionally filtered by pagePath.styrar replace-bio-blocksReplace chrome blocks for a bio version (hero, nav, footer). For section content use update_bio_version.styrar get-bio-versionFetch a bio version with theme, pages, pageMeta sections, and chrome blocks. Omit versionId for the latest locale draft.styrar update-bio-versionSave a bio draft in place with theme, pages, pageMeta (sections), and chrome blocks. Use for layout and content edits.styrar get-bio-experimentFetch the A/B experiment config for a bio page (variants, scope, status, click counts).styrar update-bio-experimentCreate or replace a draft bio experiment with variants (bioPageVersionId + weight). Scope: page, section, or block.styrar delete-bio-experimentRemove the A/B experiment configuration from a bio page.styrar control-bio-experimentStart, pause, or complete a bio A/B experiment. Pass winningVariantId when completing.styrar list-bio-routing-rulesList geo/device routing rules that serve alternate bio versions to visitors.styrar create-bio-routing-ruleAdd a geo or device routing rule mapping conditions to a bioPageVersionId.styrar update-bio-routing-ruleUpdate priority, conditions, target version, or active state on a bio routing rule.styrar delete-bio-routing-ruleRemove a geo/device routing rule from a bio page.styrar get-bio-domainFetch the custom domain attached to a bio page (company workspaces only).styrar set-bio-domainAttach a custom hostname to a bio page. Returns DNS records to configure.styrar verify-bio-domainRe-check Cloudflare verification status for a bio page custom domain.styrar delete-bio-domainDetach and delete the custom domain from a bio page.styrar list-bio-blog-categoriesList blog categories for a bio page, optionally filtered by locale.styrar create-bio-blog-categoryCreate a blog category on a bio page with name, locale, and optional slug.styrar update-bio-blog-categoryUpdate a bio blog category name or slug.styrar delete-bio-blog-categoryDelete a bio blog category.styrar list-bio-blog-postsList blog posts on a bio page; filter by locale, status, or categoryId.styrar get-bio-blog-postFetch one bio blog post by id.styrar create-bio-blog-postCreate a bio blog post with title, HTML content, excerpt, cover image, SEO fields, and DRAFT or PUBLISHED status.styrar update-bio-blog-postUpdate bio blog post content, metadata, category, slug, or publish status.styrar delete-bio-blog-postDelete a bio blog post.styrar get-bio-booking-settingsFetch appointment booking settings for a bio page: timezone, notice windows, deposit processor (Stripe or Shopify), calendar sync, and notification email.styrar update-bio-booking-settingsConfigure bio booking: IANA timezone, notifyEmail, minNoticeMinutes, maxAdvanceDays, depositProcessor with stripeConnectAccountId or shopifyStoreId, and optional calendar sync fields.styrar list-bio-booking-servicesList bookable services on a bio page with duration, buffer, capacity, custom fields, and optional deposit amounts.styrar get-bio-booking-serviceFetch one bio booking service by bioPageId and serviceId.styrar create-bio-booking-serviceAdd a bookable service with name, durationMinutes, optional description, buffer, capacity, custom intake fields, and optional depositAmountCents.styrar update-bio-booking-serviceUpdate service name, duration, deposits, custom fields, active state, or sort order.styrar delete-bio-booking-serviceRemove a bookable service from a bio page.styrar list-bio-booking-availability-rulesList weekly hours and date-override availability or blackout rules for bio booking.styrar create-bio-booking-availability-ruleAdd weekly hours or a date_override rule. Use ruleType weekly with weekday 0-6, or date_override with YYYY-MM-DD. Set isBlackout for blocked days.styrar update-bio-booking-availability-ruleUpdate startMinute/endMinute, blackout flag, or date on an availability rule.styrar delete-bio-booking-availability-ruleRemove a weekly or date-override availability rule.styrar list-bio-booking-appointmentsList upcoming or past appointments for a bio page with optional limit and cursor pagination.styrar get-bio-booking-appointmentFetch one appointment with service, slot times, guest details, and status.styrar update-bio-booking-appointmentMark a confirmed past appointment as no_show via action no_show.styrar cancel-bio-booking-appointmentCancel a confirmed appointment and notify the guest when configured.styrar list-bio-theme-presetsList workspace-saved custom bio theme presets for personal or company scope.styrar create-bio-theme-presetSave a reusable bio theme preset with label and theme JSON for the active workspace.styrar delete-bio-theme-presetDelete a saved custom bio theme preset by presetId.styrar get-bio-analyticsFetch click analytics for a bio page id with optional from/to date range.styrar get-workspace-bio-analyticsOverview analytics across all bio pages in personal or company scope.styrar list-campaignsList campaigns for personal or company scope with optional brand and click totals filters.styrar get-campaignFetch one campaign by id including counts and brand metadata.styrar create-campaignCreate a campaign with name and optional company, brand, destination, UTM, and dynamic link settings.styrar update-campaignUpdate a campaign by campaignId. Editable fields: name, description, defaultDestinationUrl, dynamicSourceEnabled, dynamicLinkMode, utmDefaults, brandId.styrar delete-campaignPermanently delete a campaign by campaignId.styrar get-content-planning-boardFetch the company content pipeline board and work items. Use view kanban for /content/plan column order, list for /content/list sorting, or timeline for /content/timeline due-date ranges. Requires company workspace and contentPlanning feature flag. Filters: campaignId, brandId, stage slug/id, tag, assigneeUserId, type (POST|LINK|BIO_UPDATE), q. Timeline view accepts optional from/to ISO dates (defaults to current month through two months ahead).styrar create-content-work-itemAdd a card to the content planning pipeline (Kanban). Requires companyId. Optional stageId, type (POST|LINK|BIO_UPDATE), title, description, campaignId, brandId, assigneeUserId, startDate, endDate, dueDate, linked postId/linkId/bioPageId, and tags.styrar update-content-work-itemUpdate a planning card by workItemId and companyId. Editable fields match create_content_work_item plus stageId and position.styrar delete-content-work-itemPermanently delete a planning card by workItemId and companyId.styrar move-content-work-itemMove a planning card to another pipeline stage (Kanban column). Requires workItemId, companyId, stageId; optional position within the column.styrar add-content-work-item-tagAdd a tag label to a planning card. Requires workItemId, companyId, and tag.styrar remove-content-work-item-tagRemove a tag from a planning card. Requires workItemId, companyId, and tag.styrar reorder-content-planning-stagesReorder or rename Kanban pipeline stages. Requires content_planning:admin. Pass companyId, boardId, and stages array with id plus optional position and name.styrar list-automationsList automation flows for personal or company scope.styrar get-automationFetch one automation by id including recent runs and nodes.styrar create-automationCreate an automation with name and optional description or company scope.styrar update-automationUpdate automation fields such as name, description, status, or viewport coordinates.styrar list-automation-runsList run history for a specific automation id.styrar run-automationTrigger a manual run for an automation with optional input payload.styrar create-automation-nodeAdd a step to an automation (kind, label, x, y required) with optional visual and config fields.styrar create-automation-edgeConnect two automation steps with a link between them.styrar list-approval-flowsList approval flows for a company (companyId required).styrar get-approval-flowFetch one approval flow by id including nodes and edges.styrar create-approval-flowCreate a company approval flow with name, optional description, and optional default flag.styrar update-approval-flowUpdate approval flow fields such as name, description, status, and default flag.styrar delete-approval-flowDelete an approval flow by id.styrar test-approval-flowSimulate a flow test run with optional dummy post fields and get step and notification results.styrar post-approval-actionPerform post approval actions (approve, reject, request_changes, reassign, override) on post tasks.styrar list-skill-documentsList Markdown skill documents for the current user or a specific brand (provide both companyId and brandId for brand scope). Returns id, slug, title, sortOrder.styrar get-skill-documentFetch a single skill document by id, including the full Markdown body. Optionally scope to a brand with companyId + brandId.styrar create-skill-documentCreate a new Markdown skill document for the user or a brand (provide both companyId and brandId for brand scope). Use list_skill_templates to get ready-made starting content.styrar update-skill-documentUpdate an existing skill document's title, Markdown body, slug, or sortOrder by id.styrar delete-skill-documentDelete a skill document by id. Optionally scope to a brand with companyId + brandId.styrar list-skill-templatesList ready-made Markdown templates — brand voice, Instagram strategy, LinkedIn strategy, content calendar, campaign planner, and hashtag strategy. Copy a template body into create_skill_document to add it to a workspace.styrar upload-mediaStore an image in the media library by passing its content as a base64-encoded string (fileData). Requires fileName and mimeType (must be image/*). The file is stored securely in S3 and automatically processed. Returns the stored file id and a signed view URL. Use when the user sends an image directly in the conversation.styrar upload-media-from-urlFetch a public image URL and store it in the media library. Requires url (must resolve to an image). Optional fileName and companyId. Returns the stored file id and a signed view URL.styrar generate-imageGenerate a new image from a text prompt and save it to the media library. Requires prompt. Optional fileName, companyId, provider (openai or gemini), and size (1024x1024, 1536x1024, or 1024x1536). Returns the stored file id and signed viewUrl.styrar list-mediaReturns the 25 most recent images and videos from the media library as an interactive picker with inline previews. Images are shown directly; videos are shown with their thumbnail frame. Each item includes fileName, id, mimeType, sizeBytes, and duration (for videos). Call this whenever the user needs to choose a media file. Optional filters: companyId, q (filename search), tag, page.styrar get-mediaFetch a single library file by id, including a signed view URL and processing status.styrar delete-mediaPermanently delete a library file by id. The file is removed from S3 and the account.styrar list-companiesList all companies the authenticated user belongs to, with role and member counts. Call this first to discover available companyId values.styrar get-companyFetch a single company by id including brand count, member count, and subscription plan.styrar create-companyCreate a new company workspace with a name and unique slug. The authenticated user becomes the owner.styrar update-companyUpdate a company's name or other profile fields by companyId.styrar list-brandsList all brands for a company by companyId. Returns id, name, slug, isArchived, and logo. Call before scoping posts, campaigns, or skill documents to a brand.styrar get-brandFetch a single brand by companyId and brandId including guidelines and logo.styrar create-brandCreate a new brand inside a company by companyId. Requires a name; slug is auto-derived.styrar update-brandUpdate a brand's name, guidelines, or archive status by companyId and brandId.styrar list-company-membersList members of a company by companyId. Returns user name, email, role, and brand access. Useful for approval flow setup.styrar list-notesList workspace notes for personal or company scope. Optional companyId to filter to a company workspace.styrar get-noteFetch a single workspace note by noteId including full body text.styrar create-noteCreate a markdown workspace note with title and body. Optional companyId and visibility (PRIVATE or COMPANY).styrar update-noteUpdate a workspace note's title, body, or visibility by noteId.styrar delete-notePermanently delete a workspace note by noteId.styrar searchGlobal search across posts, links, campaigns, bio pages, and notes. Returns matched items with type labels. Use for broad 'find me something' queries.styrar login
styrar config set companyId <id>
styrar list-tools`list-links`, `create-post`, `get-link-analytics` e altro ancora — ogni funzionalità Styrar è un comando `styrar` tipizzato e documentato, con il proprio `--help`.
Reindirizza l'output JSON verso `jq`, integralo in un cron job, una pipeline di release o uno script di importazione massiva. Ogni comando stampa JSON pulito su stdout.
La CLI è generata dalle stesse definizioni di strumenti che il server MCP Styrar espone agli assistenti IA, così script, agenti IA e dashboard restano sincronizzati automaticamente.
Autenticati con una API key del dashboard che controlli e puoi revocare in qualsiasi momento. Imposta una volta un'azienda e un brand predefiniti, poi usa `styrar` in tutto il tuo spazio di lavoro.
La CLI Styrar si autentica con le stesse API key dell'API e del server MCP Styrar. Accedi al dashboard, genera una chiave, accedi dal terminale ed è tutto pronto.
La CLI Styrar espone un set completo di comandi che coprono il flusso di lavoro principale del social OS, con le stesse protezioni del dashboard.
Scripta attività ricorrenti dello spazio di lavoro, integra Styrar in una pipeline di release o gestisci più spazi di lavoro clienti da un unico terminale.
Importa link in blocco, pianifica post in batch o esporta analytics in un report — senza cliccare manualmente nel dashboard.
Usa direttamente in uno script shell gli stessi comandi che il tuo agente IA richiama via MCP, per un comportamento prevedibile e facile da debuggare.
Accedi al tuo dashboard Styrar — la CLI e le istruzioni di installazione aggiornate per la tua piattaforma sono disponibili per gli spazi di lavoro Team e Agency che hanno effettuato l'accesso.
La CLI usa le stesse API key del dashboard usate dall'API REST e dal server MCP Styrar. Crea una chiave in Impostazioni → API Key, poi esegui `styrar login` e incollala: viene salvata localmente per i comandi successivi.
Condividono lo stesso catalogo di strumenti sottostante, quindi le stesse azioni sono disponibili in entrambi, con validazione e comportamento delle richieste identici. Il server MCP è pensato per assistenti IA come Claude e Cursor; la CLI è pensata per script, terminali e pipeline CI.
Sì. Ogni comando si autentica con una API key (tramite flag, variabile d'ambiente o configurazione salvata) e stampa JSON su stdout, quindi è semplice richiamarlo da uno script, un job pianificato o uno step CI.
No. Le azioni della CLI passano attraverso le stesse regole di permessi e flussi di approvazione del dashboard e dell'API. Gli scope della tua API key e il tuo ruolo nello spazio di lavoro determinano cosa può fare un comando.
La CLI copre l'intero spazio di lavoro Styrar: post, link brevi, pagine bio, campagne, automazioni, flussi di approvazione, media, note e ricerca — più un comando raw `styrar api` per qualsiasi endpoint senza un comando dedicato.
Accedi, ottieni una API key e inizia a scriptare il tuo spazio di lavoro in pochi minuti.