@koda-sl/baker-cli 0.32.0-dev.31ee8d9c → 0.34.1
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.
- package/README.md +101 -12
- package/package.json +1 -1
- package/dist/cli.d.ts +0 -3
- package/dist/cli.d.ts.map +0 -1
- package/dist/cli.js +0 -37
- package/dist/cli.js.map +0 -1
- package/dist/client.d.ts +0 -12
- package/dist/client.d.ts.map +0 -1
- package/dist/client.js +0 -153
- package/dist/client.js.map +0 -1
- package/dist/commands/actions/claim.d.ts +0 -13
- package/dist/commands/actions/claim.d.ts.map +0 -1
- package/dist/commands/actions/claim.js +0 -45
- package/dist/commands/actions/claim.js.map +0 -1
- package/dist/commands/actions/complete.d.ts +0 -18
- package/dist/commands/actions/complete.d.ts.map +0 -1
- package/dist/commands/actions/complete.js +0 -42
- package/dist/commands/actions/complete.js.map +0 -1
- package/dist/commands/actions/create.d.ts +0 -24
- package/dist/commands/actions/create.d.ts.map +0 -1
- package/dist/commands/actions/create.js +0 -68
- package/dist/commands/actions/create.js.map +0 -1
- package/dist/commands/actions/discard.d.ts +0 -18
- package/dist/commands/actions/discard.d.ts.map +0 -1
- package/dist/commands/actions/discard.js +0 -44
- package/dist/commands/actions/discard.js.map +0 -1
- package/dist/commands/actions/get.d.ts +0 -13
- package/dist/commands/actions/get.d.ts.map +0 -1
- package/dist/commands/actions/get.js +0 -34
- package/dist/commands/actions/get.js.map +0 -1
- package/dist/commands/actions/index.d.ts +0 -2
- package/dist/commands/actions/index.d.ts.map +0 -1
- package/dist/commands/actions/index.js +0 -43
- package/dist/commands/actions/index.js.map +0 -1
- package/dist/commands/actions/link.d.ts +0 -13
- package/dist/commands/actions/link.d.ts.map +0 -1
- package/dist/commands/actions/link.js +0 -43
- package/dist/commands/actions/link.js.map +0 -1
- package/dist/commands/actions/list.d.ts +0 -19
- package/dist/commands/actions/list.d.ts.map +0 -1
- package/dist/commands/actions/list.js +0 -66
- package/dist/commands/actions/list.js.map +0 -1
- package/dist/commands/actions/release.d.ts +0 -13
- package/dist/commands/actions/release.d.ts.map +0 -1
- package/dist/commands/actions/release.js +0 -38
- package/dist/commands/actions/release.js.map +0 -1
- package/dist/commands/actions/shared.d.ts +0 -6
- package/dist/commands/actions/shared.d.ts.map +0 -1
- package/dist/commands/actions/shared.js +0 -28
- package/dist/commands/actions/shared.js.map +0 -1
- package/dist/commands/actions/tag/add.d.ts +0 -18
- package/dist/commands/actions/tag/add.d.ts.map +0 -1
- package/dist/commands/actions/tag/add.js +0 -47
- package/dist/commands/actions/tag/add.js.map +0 -1
- package/dist/commands/actions/tag/create.d.ts +0 -23
- package/dist/commands/actions/tag/create.d.ts.map +0 -1
- package/dist/commands/actions/tag/create.js +0 -50
- package/dist/commands/actions/tag/create.js.map +0 -1
- package/dist/commands/actions/tag/delete.d.ts +0 -13
- package/dist/commands/actions/tag/delete.d.ts.map +0 -1
- package/dist/commands/actions/tag/delete.js +0 -36
- package/dist/commands/actions/tag/delete.js.map +0 -1
- package/dist/commands/actions/tag/index.d.ts +0 -2
- package/dist/commands/actions/tag/index.d.ts.map +0 -1
- package/dist/commands/actions/tag/index.js +0 -32
- package/dist/commands/actions/tag/index.js.map +0 -1
- package/dist/commands/actions/tag/list.d.ts +0 -2
- package/dist/commands/actions/tag/list.d.ts.map +0 -1
- package/dist/commands/actions/tag/list.js +0 -24
- package/dist/commands/actions/tag/list.js.map +0 -1
- package/dist/commands/actions/tag/remove.d.ts +0 -18
- package/dist/commands/actions/tag/remove.d.ts.map +0 -1
- package/dist/commands/actions/tag/remove.js +0 -48
- package/dist/commands/actions/tag/remove.js.map +0 -1
- package/dist/commands/actions/tag/update.d.ts +0 -28
- package/dist/commands/actions/tag/update.d.ts.map +0 -1
- package/dist/commands/actions/tag/update.js +0 -50
- package/dist/commands/actions/tag/update.js.map +0 -1
- package/dist/commands/actions/unlink.d.ts +0 -13
- package/dist/commands/actions/unlink.d.ts.map +0 -1
- package/dist/commands/actions/unlink.js +0 -45
- package/dist/commands/actions/unlink.js.map +0 -1
- package/dist/commands/actions/update.d.ts +0 -23
- package/dist/commands/actions/update.d.ts.map +0 -1
- package/dist/commands/actions/update.js +0 -50
- package/dist/commands/actions/update.js.map +0 -1
- package/dist/commands/ads/cache.d.ts +0 -7
- package/dist/commands/ads/cache.d.ts.map +0 -1
- package/dist/commands/ads/cache.js +0 -73
- package/dist/commands/ads/cache.js.map +0 -1
- package/dist/commands/ads/cache.test.d.ts +0 -2
- package/dist/commands/ads/cache.test.d.ts.map +0 -1
- package/dist/commands/ads/cache.test.js +0 -44
- package/dist/commands/ads/cache.test.js.map +0 -1
- package/dist/commands/ads/field-descriptions.d.ts +0 -2
- package/dist/commands/ads/field-descriptions.d.ts.map +0 -1
- package/dist/commands/ads/field-descriptions.js +0 -91
- package/dist/commands/ads/field-descriptions.js.map +0 -1
- package/dist/commands/ads/google/accounts.d.ts +0 -14
- package/dist/commands/ads/google/accounts.d.ts.map +0 -1
- package/dist/commands/ads/google/accounts.js +0 -76
- package/dist/commands/ads/google/accounts.js.map +0 -1
- package/dist/commands/ads/google/changes.d.ts +0 -34
- package/dist/commands/ads/google/changes.d.ts.map +0 -1
- package/dist/commands/ads/google/changes.js +0 -80
- package/dist/commands/ads/google/changes.js.map +0 -1
- package/dist/commands/ads/google/correction-table.d.ts +0 -3
- package/dist/commands/ads/google/correction-table.d.ts.map +0 -1
- package/dist/commands/ads/google/correction-table.js +0 -352
- package/dist/commands/ads/google/correction-table.js.map +0 -1
- package/dist/commands/ads/google/currency.d.ts +0 -13
- package/dist/commands/ads/google/currency.d.ts.map +0 -1
- package/dist/commands/ads/google/currency.js +0 -68
- package/dist/commands/ads/google/currency.js.map +0 -1
- package/dist/commands/ads/google/error-parser.d.ts +0 -3
- package/dist/commands/ads/google/error-parser.d.ts.map +0 -1
- package/dist/commands/ads/google/error-parser.js +0 -91
- package/dist/commands/ads/google/error-parser.js.map +0 -1
- package/dist/commands/ads/google/error-parser.test.d.ts +0 -2
- package/dist/commands/ads/google/error-parser.test.d.ts.map +0 -1
- package/dist/commands/ads/google/error-parser.test.js +0 -48
- package/dist/commands/ads/google/error-parser.test.js.map +0 -1
- package/dist/commands/ads/google/index.d.ts +0 -2
- package/dist/commands/ads/google/index.d.ts.map +0 -1
- package/dist/commands/ads/google/index.js +0 -34
- package/dist/commands/ads/google/index.js.map +0 -1
- package/dist/commands/ads/google/keywords/discover.d.ts +0 -49
- package/dist/commands/ads/google/keywords/discover.d.ts.map +0 -1
- package/dist/commands/ads/google/keywords/discover.js +0 -151
- package/dist/commands/ads/google/keywords/discover.js.map +0 -1
- package/dist/commands/ads/google/keywords/index.d.ts +0 -2
- package/dist/commands/ads/google/keywords/index.d.ts.map +0 -1
- package/dist/commands/ads/google/keywords/index.js +0 -24
- package/dist/commands/ads/google/keywords/index.js.map +0 -1
- package/dist/commands/ads/google/keywords/languages.d.ts +0 -2
- package/dist/commands/ads/google/keywords/languages.d.ts.map +0 -1
- package/dist/commands/ads/google/keywords/languages.js +0 -23
- package/dist/commands/ads/google/keywords/languages.js.map +0 -1
- package/dist/commands/ads/google/keywords/locations.d.ts +0 -2
- package/dist/commands/ads/google/keywords/locations.d.ts.map +0 -1
- package/dist/commands/ads/google/keywords/locations.js +0 -23
- package/dist/commands/ads/google/keywords/locations.js.map +0 -1
- package/dist/commands/ads/google/keywords/metrics.d.ts +0 -34
- package/dist/commands/ads/google/keywords/metrics.d.ts.map +0 -1
- package/dist/commands/ads/google/keywords/metrics.js +0 -123
- package/dist/commands/ads/google/keywords/metrics.js.map +0 -1
- package/dist/commands/ads/google/library/index.d.ts +0 -3
- package/dist/commands/ads/google/library/index.d.ts.map +0 -1
- package/dist/commands/ads/google/library/index.js +0 -279
- package/dist/commands/ads/google/library/index.js.map +0 -1
- package/dist/commands/ads/google/library/index.test.d.ts +0 -2
- package/dist/commands/ads/google/library/index.test.d.ts.map +0 -1
- package/dist/commands/ads/google/library/index.test.js +0 -26
- package/dist/commands/ads/google/library/index.test.js.map +0 -1
- package/dist/commands/ads/google/preflight.d.ts +0 -3
- package/dist/commands/ads/google/preflight.d.ts.map +0 -1
- package/dist/commands/ads/google/preflight.js +0 -122
- package/dist/commands/ads/google/preflight.js.map +0 -1
- package/dist/commands/ads/google/preflight.test.d.ts +0 -2
- package/dist/commands/ads/google/preflight.test.d.ts.map +0 -1
- package/dist/commands/ads/google/preflight.test.js +0 -50
- package/dist/commands/ads/google/preflight.test.js.map +0 -1
- package/dist/commands/ads/google/presets.d.ts +0 -12
- package/dist/commands/ads/google/presets.d.ts.map +0 -1
- package/dist/commands/ads/google/presets.js +0 -85
- package/dist/commands/ads/google/presets.js.map +0 -1
- package/dist/commands/ads/google/presets.test.d.ts +0 -2
- package/dist/commands/ads/google/presets.test.d.ts.map +0 -1
- package/dist/commands/ads/google/presets.test.js +0 -79
- package/dist/commands/ads/google/presets.test.js.map +0 -1
- package/dist/commands/ads/google/query.d.ts +0 -64
- package/dist/commands/ads/google/query.d.ts.map +0 -1
- package/dist/commands/ads/google/query.js +0 -304
- package/dist/commands/ads/google/query.js.map +0 -1
- package/dist/commands/ads/index.d.ts +0 -2
- package/dist/commands/ads/index.d.ts.map +0 -1
- package/dist/commands/ads/index.js +0 -34
- package/dist/commands/ads/index.js.map +0 -1
- package/dist/commands/ads/linkedin/account.d.ts +0 -20
- package/dist/commands/ads/linkedin/account.d.ts.map +0 -1
- package/dist/commands/ads/linkedin/account.js +0 -39
- package/dist/commands/ads/linkedin/account.js.map +0 -1
- package/dist/commands/ads/linkedin/accounts.d.ts +0 -20
- package/dist/commands/ads/linkedin/accounts.d.ts.map +0 -1
- package/dist/commands/ads/linkedin/accounts.js +0 -56
- package/dist/commands/ads/linkedin/accounts.js.map +0 -1
- package/dist/commands/ads/linkedin/analytics.d.ts +0 -84
- package/dist/commands/ads/linkedin/analytics.d.ts.map +0 -1
- package/dist/commands/ads/linkedin/analytics.js +0 -249
- package/dist/commands/ads/linkedin/analytics.js.map +0 -1
- package/dist/commands/ads/linkedin/audience-size.d.ts +0 -28
- package/dist/commands/ads/linkedin/audience-size.d.ts.map +0 -1
- package/dist/commands/ads/linkedin/audience-size.js +0 -75
- package/dist/commands/ads/linkedin/audience-size.js.map +0 -1
- package/dist/commands/ads/linkedin/audit.d.ts +0 -35
- package/dist/commands/ads/linkedin/audit.d.ts.map +0 -1
- package/dist/commands/ads/linkedin/audit.js +0 -136
- package/dist/commands/ads/linkedin/audit.js.map +0 -1
- package/dist/commands/ads/linkedin/bid-pricing.d.ts +0 -38
- package/dist/commands/ads/linkedin/bid-pricing.d.ts.map +0 -1
- package/dist/commands/ads/linkedin/bid-pricing.js +0 -76
- package/dist/commands/ads/linkedin/bid-pricing.js.map +0 -1
- package/dist/commands/ads/linkedin/campaign-groups.d.ts +0 -32
- package/dist/commands/ads/linkedin/campaign-groups.d.ts.map +0 -1
- package/dist/commands/ads/linkedin/campaign-groups.js +0 -50
- package/dist/commands/ads/linkedin/campaign-groups.js.map +0 -1
- package/dist/commands/ads/linkedin/campaigns.d.ts +0 -36
- package/dist/commands/ads/linkedin/campaigns.d.ts.map +0 -1
- package/dist/commands/ads/linkedin/campaigns.js +0 -57
- package/dist/commands/ads/linkedin/campaigns.js.map +0 -1
- package/dist/commands/ads/linkedin/conversation.d.ts +0 -36
- package/dist/commands/ads/linkedin/conversation.d.ts.map +0 -1
- package/dist/commands/ads/linkedin/conversation.js +0 -77
- package/dist/commands/ads/linkedin/conversation.js.map +0 -1
- package/dist/commands/ads/linkedin/conversions.d.ts +0 -2
- package/dist/commands/ads/linkedin/conversions.d.ts.map +0 -1
- package/dist/commands/ads/linkedin/conversions.js +0 -102
- package/dist/commands/ads/linkedin/conversions.js.map +0 -1
- package/dist/commands/ads/linkedin/creatives.d.ts +0 -36
- package/dist/commands/ads/linkedin/creatives.d.ts.map +0 -1
- package/dist/commands/ads/linkedin/creatives.js +0 -57
- package/dist/commands/ads/linkedin/creatives.js.map +0 -1
- package/dist/commands/ads/linkedin/demographics.d.ts +0 -40
- package/dist/commands/ads/linkedin/demographics.d.ts.map +0 -1
- package/dist/commands/ads/linkedin/demographics.js +0 -117
- package/dist/commands/ads/linkedin/demographics.js.map +0 -1
- package/dist/commands/ads/linkedin/facets.d.ts +0 -2
- package/dist/commands/ads/linkedin/facets.d.ts.map +0 -1
- package/dist/commands/ads/linkedin/facets.js +0 -95
- package/dist/commands/ads/linkedin/facets.js.map +0 -1
- package/dist/commands/ads/linkedin/forecast.d.ts +0 -50
- package/dist/commands/ads/linkedin/forecast.d.ts.map +0 -1
- package/dist/commands/ads/linkedin/forecast.js +0 -83
- package/dist/commands/ads/linkedin/forecast.js.map +0 -1
- package/dist/commands/ads/linkedin/index.d.ts +0 -19
- package/dist/commands/ads/linkedin/index.d.ts.map +0 -1
- package/dist/commands/ads/linkedin/index.js +0 -83
- package/dist/commands/ads/linkedin/index.js.map +0 -1
- package/dist/commands/ads/linkedin/leads.d.ts +0 -40
- package/dist/commands/ads/linkedin/leads.d.ts.map +0 -1
- package/dist/commands/ads/linkedin/leads.js +0 -75
- package/dist/commands/ads/linkedin/leads.js.map +0 -1
- package/dist/commands/ads/linkedin/presets.d.ts +0 -40
- package/dist/commands/ads/linkedin/presets.d.ts.map +0 -1
- package/dist/commands/ads/linkedin/presets.js +0 -193
- package/dist/commands/ads/linkedin/presets.js.map +0 -1
- package/dist/commands/ads/linkedin/presets.test.d.ts +0 -2
- package/dist/commands/ads/linkedin/presets.test.d.ts.map +0 -1
- package/dist/commands/ads/linkedin/presets.test.js +0 -98
- package/dist/commands/ads/linkedin/presets.test.js.map +0 -1
- package/dist/commands/ads/linkedin/schemas.d.ts +0 -2
- package/dist/commands/ads/linkedin/schemas.d.ts.map +0 -1
- package/dist/commands/ads/linkedin/schemas.js +0 -300
- package/dist/commands/ads/linkedin/schemas.js.map +0 -1
- package/dist/commands/ads/linkedin/shared.d.ts +0 -17
- package/dist/commands/ads/linkedin/shared.d.ts.map +0 -1
- package/dist/commands/ads/linkedin/shared.js +0 -116
- package/dist/commands/ads/linkedin/shared.js.map +0 -1
- package/dist/commands/ads/linkedin/top-companies.d.ts +0 -44
- package/dist/commands/ads/linkedin/top-companies.d.ts.map +0 -1
- package/dist/commands/ads/linkedin/top-companies.js +0 -86
- package/dist/commands/ads/linkedin/top-companies.js.map +0 -1
- package/dist/commands/ads/meta/account.d.ts +0 -11
- package/dist/commands/ads/meta/account.d.ts.map +0 -1
- package/dist/commands/ads/meta/account.js +0 -32
- package/dist/commands/ads/meta/account.js.map +0 -1
- package/dist/commands/ads/meta/accounts.d.ts +0 -20
- package/dist/commands/ads/meta/accounts.d.ts.map +0 -1
- package/dist/commands/ads/meta/accounts.js +0 -55
- package/dist/commands/ads/meta/accounts.js.map +0 -1
- package/dist/commands/ads/meta/activities.d.ts +0 -24
- package/dist/commands/ads/meta/activities.d.ts.map +0 -1
- package/dist/commands/ads/meta/activities.js +0 -44
- package/dist/commands/ads/meta/activities.js.map +0 -1
- package/dist/commands/ads/meta/ads.d.ts +0 -36
- package/dist/commands/ads/meta/ads.d.ts.map +0 -1
- package/dist/commands/ads/meta/ads.js +0 -57
- package/dist/commands/ads/meta/ads.js.map +0 -1
- package/dist/commands/ads/meta/adsets.d.ts +0 -32
- package/dist/commands/ads/meta/adsets.d.ts.map +0 -1
- package/dist/commands/ads/meta/adsets.js +0 -50
- package/dist/commands/ads/meta/adsets.js.map +0 -1
- package/dist/commands/ads/meta/audiences.d.ts +0 -20
- package/dist/commands/ads/meta/audiences.d.ts.map +0 -1
- package/dist/commands/ads/meta/audiences.js +0 -41
- package/dist/commands/ads/meta/audiences.js.map +0 -1
- package/dist/commands/ads/meta/businesses.d.ts +0 -12
- package/dist/commands/ads/meta/businesses.d.ts.map +0 -1
- package/dist/commands/ads/meta/businesses.js +0 -35
- package/dist/commands/ads/meta/businesses.js.map +0 -1
- package/dist/commands/ads/meta/campaigns.d.ts +0 -28
- package/dist/commands/ads/meta/campaigns.d.ts.map +0 -1
- package/dist/commands/ads/meta/campaigns.js +0 -51
- package/dist/commands/ads/meta/campaigns.js.map +0 -1
- package/dist/commands/ads/meta/creatives.d.ts +0 -24
- package/dist/commands/ads/meta/creatives.d.ts.map +0 -1
- package/dist/commands/ads/meta/creatives.js +0 -51
- package/dist/commands/ads/meta/creatives.js.map +0 -1
- package/dist/commands/ads/meta/index.d.ts +0 -17
- package/dist/commands/ads/meta/index.d.ts.map +0 -1
- package/dist/commands/ads/meta/index.js +0 -79
- package/dist/commands/ads/meta/index.js.map +0 -1
- package/dist/commands/ads/meta/insights.d.ts +0 -92
- package/dist/commands/ads/meta/insights.d.ts.map +0 -1
- package/dist/commands/ads/meta/insights.js +0 -260
- package/dist/commands/ads/meta/insights.js.map +0 -1
- package/dist/commands/ads/meta/pixels.d.ts +0 -33
- package/dist/commands/ads/meta/pixels.d.ts.map +0 -1
- package/dist/commands/ads/meta/pixels.js +0 -76
- package/dist/commands/ads/meta/pixels.js.map +0 -1
- package/dist/commands/ads/meta/presets.d.ts +0 -30
- package/dist/commands/ads/meta/presets.d.ts.map +0 -1
- package/dist/commands/ads/meta/presets.js +0 -86
- package/dist/commands/ads/meta/presets.js.map +0 -1
- package/dist/commands/ads/meta/preview.d.ts +0 -32
- package/dist/commands/ads/meta/preview.d.ts.map +0 -1
- package/dist/commands/ads/meta/preview.js +0 -90
- package/dist/commands/ads/meta/preview.js.map +0 -1
- package/dist/commands/ads/meta/shared.d.ts +0 -18
- package/dist/commands/ads/meta/shared.d.ts.map +0 -1
- package/dist/commands/ads/meta/shared.js +0 -86
- package/dist/commands/ads/meta/shared.js.map +0 -1
- package/dist/commands/ads/output.d.ts +0 -22
- package/dist/commands/ads/output.d.ts.map +0 -1
- package/dist/commands/ads/output.js +0 -130
- package/dist/commands/ads/output.js.map +0 -1
- package/dist/commands/ads/output.test.d.ts +0 -2
- package/dist/commands/ads/output.test.d.ts.map +0 -1
- package/dist/commands/ads/output.test.js +0 -100
- package/dist/commands/ads/output.test.js.map +0 -1
- package/dist/commands/ads/types.d.ts +0 -69
- package/dist/commands/ads/types.d.ts.map +0 -1
- package/dist/commands/ads/types.js +0 -2
- package/dist/commands/ads/types.js.map +0 -1
- package/dist/commands/ads/x/accounts.d.ts +0 -14
- package/dist/commands/ads/x/accounts.d.ts.map +0 -1
- package/dist/commands/ads/x/accounts.js +0 -73
- package/dist/commands/ads/x/accounts.js.map +0 -1
- package/dist/commands/ads/x/active-entities.d.ts +0 -43
- package/dist/commands/ads/x/active-entities.d.ts.map +0 -1
- package/dist/commands/ads/x/active-entities.js +0 -88
- package/dist/commands/ads/x/active-entities.js.map +0 -1
- package/dist/commands/ads/x/audiences.d.ts +0 -19
- package/dist/commands/ads/x/audiences.d.ts.map +0 -1
- package/dist/commands/ads/x/audiences.js +0 -65
- package/dist/commands/ads/x/audiences.js.map +0 -1
- package/dist/commands/ads/x/campaigns.d.ts +0 -34
- package/dist/commands/ads/x/campaigns.d.ts.map +0 -1
- package/dist/commands/ads/x/campaigns.js +0 -56
- package/dist/commands/ads/x/campaigns.js.map +0 -1
- package/dist/commands/ads/x/cards.d.ts +0 -19
- package/dist/commands/ads/x/cards.d.ts.map +0 -1
- package/dist/commands/ads/x/cards.js +0 -65
- package/dist/commands/ads/x/cards.js.map +0 -1
- package/dist/commands/ads/x/error-parser.d.ts +0 -3
- package/dist/commands/ads/x/error-parser.d.ts.map +0 -1
- package/dist/commands/ads/x/error-parser.js +0 -80
- package/dist/commands/ads/x/error-parser.js.map +0 -1
- package/dist/commands/ads/x/funding.d.ts +0 -19
- package/dist/commands/ads/x/funding.d.ts.map +0 -1
- package/dist/commands/ads/x/funding.js +0 -65
- package/dist/commands/ads/x/funding.js.map +0 -1
- package/dist/commands/ads/x/index.d.ts +0 -2
- package/dist/commands/ads/x/index.d.ts.map +0 -1
- package/dist/commands/ads/x/index.js +0 -50
- package/dist/commands/ads/x/index.js.map +0 -1
- package/dist/commands/ads/x/line-items.d.ts +0 -34
- package/dist/commands/ads/x/line-items.d.ts.map +0 -1
- package/dist/commands/ads/x/line-items.js +0 -55
- package/dist/commands/ads/x/line-items.js.map +0 -1
- package/dist/commands/ads/x/media.d.ts +0 -24
- package/dist/commands/ads/x/media.d.ts.map +0 -1
- package/dist/commands/ads/x/media.js +0 -70
- package/dist/commands/ads/x/media.js.map +0 -1
- package/dist/commands/ads/x/output.d.ts +0 -13
- package/dist/commands/ads/x/output.d.ts.map +0 -1
- package/dist/commands/ads/x/output.js +0 -75
- package/dist/commands/ads/x/output.js.map +0 -1
- package/dist/commands/ads/x/presets.d.ts +0 -15
- package/dist/commands/ads/x/presets.d.ts.map +0 -1
- package/dist/commands/ads/x/presets.js +0 -60
- package/dist/commands/ads/x/presets.js.map +0 -1
- package/dist/commands/ads/x/promoted-tweets.d.ts +0 -29
- package/dist/commands/ads/x/promoted-tweets.d.ts.map +0 -1
- package/dist/commands/ads/x/promoted-tweets.js +0 -74
- package/dist/commands/ads/x/promoted-tweets.js.map +0 -1
- package/dist/commands/ads/x/run-list.d.ts +0 -17
- package/dist/commands/ads/x/run-list.d.ts.map +0 -1
- package/dist/commands/ads/x/run-list.js +0 -60
- package/dist/commands/ads/x/run-list.js.map +0 -1
- package/dist/commands/ads/x/stats/index.d.ts +0 -2
- package/dist/commands/ads/x/stats/index.d.ts.map +0 -1
- package/dist/commands/ads/x/stats/index.js +0 -32
- package/dist/commands/ads/x/stats/index.js.map +0 -1
- package/dist/commands/ads/x/stats/job-create.d.ts +0 -58
- package/dist/commands/ads/x/stats/job-create.d.ts.map +0 -1
- package/dist/commands/ads/x/stats/job-create.js +0 -95
- package/dist/commands/ads/x/stats/job-create.js.map +0 -1
- package/dist/commands/ads/x/stats/job-status.d.ts +0 -18
- package/dist/commands/ads/x/stats/job-status.d.ts.map +0 -1
- package/dist/commands/ads/x/stats/job-status.js +0 -58
- package/dist/commands/ads/x/stats/job-status.js.map +0 -1
- package/dist/commands/ads/x/stats/job.d.ts +0 -63
- package/dist/commands/ads/x/stats/job.d.ts.map +0 -1
- package/dist/commands/ads/x/stats/job.js +0 -183
- package/dist/commands/ads/x/stats/job.js.map +0 -1
- package/dist/commands/ads/x/stats/sync.d.ts +0 -73
- package/dist/commands/ads/x/stats/sync.d.ts.map +0 -1
- package/dist/commands/ads/x/stats/sync.js +0 -151
- package/dist/commands/ads/x/stats/sync.js.map +0 -1
- package/dist/commands/ads/x/targeting-constants.d.ts +0 -34
- package/dist/commands/ads/x/targeting-constants.d.ts.map +0 -1
- package/dist/commands/ads/x/targeting-constants.js +0 -80
- package/dist/commands/ads/x/targeting-constants.js.map +0 -1
- package/dist/commands/ads/x/targeting-criteria.d.ts +0 -24
- package/dist/commands/ads/x/targeting-criteria.d.ts.map +0 -1
- package/dist/commands/ads/x/targeting-criteria.js +0 -69
- package/dist/commands/ads/x/targeting-criteria.js.map +0 -1
- package/dist/commands/ga4/audit.d.ts +0 -13
- package/dist/commands/ga4/audit.d.ts.map +0 -1
- package/dist/commands/ga4/audit.js +0 -67
- package/dist/commands/ga4/audit.js.map +0 -1
- package/dist/commands/ga4/index.d.ts +0 -2
- package/dist/commands/ga4/index.d.ts.map +0 -1
- package/dist/commands/ga4/index.js +0 -26
- package/dist/commands/ga4/index.js.map +0 -1
- package/dist/commands/ga4/presets.d.ts +0 -8
- package/dist/commands/ga4/presets.d.ts.map +0 -1
- package/dist/commands/ga4/presets.js +0 -33
- package/dist/commands/ga4/presets.js.map +0 -1
- package/dist/commands/ga4/properties.d.ts +0 -14
- package/dist/commands/ga4/properties.d.ts.map +0 -1
- package/dist/commands/ga4/properties.js +0 -61
- package/dist/commands/ga4/properties.js.map +0 -1
- package/dist/commands/ga4/query.d.ts +0 -69
- package/dist/commands/ga4/query.d.ts.map +0 -1
- package/dist/commands/ga4/query.js +0 -184
- package/dist/commands/ga4/query.js.map +0 -1
- package/dist/commands/ga4/resolve.d.ts +0 -2
- package/dist/commands/ga4/resolve.d.ts.map +0 -1
- package/dist/commands/ga4/resolve.js +0 -57
- package/dist/commands/ga4/resolve.js.map +0 -1
- package/dist/commands/gsc/index.d.ts +0 -2
- package/dist/commands/gsc/index.d.ts.map +0 -1
- package/dist/commands/gsc/index.js +0 -26
- package/dist/commands/gsc/index.js.map +0 -1
- package/dist/commands/gsc/presets.d.ts +0 -9
- package/dist/commands/gsc/presets.d.ts.map +0 -1
- package/dist/commands/gsc/presets.js +0 -34
- package/dist/commands/gsc/presets.js.map +0 -1
- package/dist/commands/gsc/query.d.ts +0 -79
- package/dist/commands/gsc/query.d.ts.map +0 -1
- package/dist/commands/gsc/query.js +0 -196
- package/dist/commands/gsc/query.js.map +0 -1
- package/dist/commands/gsc/resolve.d.ts +0 -2
- package/dist/commands/gsc/resolve.d.ts.map +0 -1
- package/dist/commands/gsc/resolve.js +0 -57
- package/dist/commands/gsc/resolve.js.map +0 -1
- package/dist/commands/gsc/sitemaps.d.ts +0 -19
- package/dist/commands/gsc/sitemaps.d.ts.map +0 -1
- package/dist/commands/gsc/sitemaps.js +0 -65
- package/dist/commands/gsc/sitemaps.js.map +0 -1
- package/dist/commands/gsc/sites.d.ts +0 -14
- package/dist/commands/gsc/sites.d.ts.map +0 -1
- package/dist/commands/gsc/sites.js +0 -61
- package/dist/commands/gsc/sites.js.map +0 -1
- package/dist/commands/images/delete.d.ts +0 -19
- package/dist/commands/images/delete.d.ts.map +0 -1
- package/dist/commands/images/delete.js +0 -58
- package/dist/commands/images/delete.js.map +0 -1
- package/dist/commands/images/extract.d.ts +0 -23
- package/dist/commands/images/extract.d.ts.map +0 -1
- package/dist/commands/images/extract.js +0 -53
- package/dist/commands/images/extract.js.map +0 -1
- package/dist/commands/images/find.d.ts +0 -33
- package/dist/commands/images/find.d.ts.map +0 -1
- package/dist/commands/images/find.js +0 -70
- package/dist/commands/images/find.js.map +0 -1
- package/dist/commands/images/get.d.ts +0 -30
- package/dist/commands/images/get.d.ts.map +0 -1
- package/dist/commands/images/get.js +0 -42
- package/dist/commands/images/get.js.map +0 -1
- package/dist/commands/images/gif.d.ts +0 -33
- package/dist/commands/images/gif.d.ts.map +0 -1
- package/dist/commands/images/gif.js +0 -81
- package/dist/commands/images/gif.js.map +0 -1
- package/dist/commands/images/google.d.ts +0 -38
- package/dist/commands/images/google.d.ts.map +0 -1
- package/dist/commands/images/google.js +0 -77
- package/dist/commands/images/google.js.map +0 -1
- package/dist/commands/images/icon.d.ts +0 -23
- package/dist/commands/images/icon.d.ts.map +0 -1
- package/dist/commands/images/icon.js +0 -57
- package/dist/commands/images/icon.js.map +0 -1
- package/dist/commands/images/index.d.ts +0 -2
- package/dist/commands/images/index.d.ts.map +0 -1
- package/dist/commands/images/index.js +0 -63
- package/dist/commands/images/index.js.map +0 -1
- package/dist/commands/images/ingest.d.ts +0 -28
- package/dist/commands/images/ingest.d.ts.map +0 -1
- package/dist/commands/images/ingest.js +0 -60
- package/dist/commands/images/ingest.js.map +0 -1
- package/dist/commands/images/library.d.ts +0 -55
- package/dist/commands/images/library.d.ts.map +0 -1
- package/dist/commands/images/library.js +0 -86
- package/dist/commands/images/library.js.map +0 -1
- package/dist/commands/images/logo.d.ts +0 -18
- package/dist/commands/images/logo.d.ts.map +0 -1
- package/dist/commands/images/logo.js +0 -49
- package/dist/commands/images/logo.js.map +0 -1
- package/dist/commands/images/meme.d.ts +0 -28
- package/dist/commands/images/meme.d.ts.map +0 -1
- package/dist/commands/images/meme.js +0 -66
- package/dist/commands/images/meme.js.map +0 -1
- package/dist/commands/images/screenshot.d.ts +0 -23
- package/dist/commands/images/screenshot.d.ts.map +0 -1
- package/dist/commands/images/screenshot.js +0 -64
- package/dist/commands/images/screenshot.js.map +0 -1
- package/dist/commands/images/search.d.ts +0 -45
- package/dist/commands/images/search.d.ts.map +0 -1
- package/dist/commands/images/search.js +0 -74
- package/dist/commands/images/search.js.map +0 -1
- package/dist/commands/images/sticker.d.ts +0 -33
- package/dist/commands/images/sticker.d.ts.map +0 -1
- package/dist/commands/images/sticker.js +0 -81
- package/dist/commands/images/sticker.js.map +0 -1
- package/dist/commands/images/stock.d.ts +0 -58
- package/dist/commands/images/stock.d.ts.map +0 -1
- package/dist/commands/images/stock.js +0 -116
- package/dist/commands/images/stock.js.map +0 -1
- package/dist/commands/images/upload.d.ts +0 -24
- package/dist/commands/images/upload.d.ts.map +0 -1
- package/dist/commands/images/upload.js +0 -90
- package/dist/commands/images/upload.js.map +0 -1
- package/dist/commands/images/use.d.ts +0 -18
- package/dist/commands/images/use.d.ts.map +0 -1
- package/dist/commands/images/use.js +0 -57
- package/dist/commands/images/use.js.map +0 -1
- package/dist/commands/research/advertisers.d.ts +0 -34
- package/dist/commands/research/advertisers.d.ts.map +0 -1
- package/dist/commands/research/advertisers.js +0 -78
- package/dist/commands/research/advertisers.js.map +0 -1
- package/dist/commands/research/autocomplete.d.ts +0 -34
- package/dist/commands/research/autocomplete.d.ts.map +0 -1
- package/dist/commands/research/autocomplete.js +0 -73
- package/dist/commands/research/autocomplete.js.map +0 -1
- package/dist/commands/research/countries.d.ts +0 -2
- package/dist/commands/research/countries.d.ts.map +0 -1
- package/dist/commands/research/countries.js +0 -69
- package/dist/commands/research/countries.js.map +0 -1
- package/dist/commands/research/index.d.ts +0 -2
- package/dist/commands/research/index.d.ts.map +0 -1
- package/dist/commands/research/index.js +0 -50
- package/dist/commands/research/index.js.map +0 -1
- package/dist/commands/research/intent.d.ts +0 -24
- package/dist/commands/research/intent.d.ts.map +0 -1
- package/dist/commands/research/intent.js +0 -78
- package/dist/commands/research/intent.js.map +0 -1
- package/dist/commands/research/keyword-gap.d.ts +0 -49
- package/dist/commands/research/keyword-gap.d.ts.map +0 -1
- package/dist/commands/research/keyword-gap.js +0 -107
- package/dist/commands/research/keyword-gap.js.map +0 -1
- package/dist/commands/research/keywords-for-site.d.ts +0 -44
- package/dist/commands/research/keywords-for-site.d.ts.map +0 -1
- package/dist/commands/research/keywords-for-site.js +0 -90
- package/dist/commands/research/keywords-for-site.js.map +0 -1
- package/dist/commands/research/languages.d.ts +0 -2
- package/dist/commands/research/languages.d.ts.map +0 -1
- package/dist/commands/research/languages.js +0 -42
- package/dist/commands/research/languages.js.map +0 -1
- package/dist/commands/research/lighthouse.d.ts +0 -24
- package/dist/commands/research/lighthouse.d.ts.map +0 -1
- package/dist/commands/research/lighthouse.js +0 -60
- package/dist/commands/research/lighthouse.js.map +0 -1
- package/dist/commands/research/output.d.ts +0 -29
- package/dist/commands/research/output.d.ts.map +0 -1
- package/dist/commands/research/output.js +0 -81
- package/dist/commands/research/output.js.map +0 -1
- package/dist/commands/research/relevant-pages.d.ts +0 -34
- package/dist/commands/research/relevant-pages.d.ts.map +0 -1
- package/dist/commands/research/relevant-pages.js +0 -76
- package/dist/commands/research/relevant-pages.js.map +0 -1
- package/dist/commands/research/web.d.ts +0 -19
- package/dist/commands/research/web.d.ts.map +0 -1
- package/dist/commands/research/web.js +0 -112
- package/dist/commands/research/web.js.map +0 -1
- package/dist/commands/schema.d.ts +0 -8
- package/dist/commands/schema.d.ts.map +0 -1
- package/dist/commands/schema.js +0 -38
- package/dist/commands/schema.js.map +0 -1
- package/dist/commands/testimonials/get.d.ts +0 -30
- package/dist/commands/testimonials/get.d.ts.map +0 -1
- package/dist/commands/testimonials/get.js +0 -42
- package/dist/commands/testimonials/get.js.map +0 -1
- package/dist/commands/testimonials/index.d.ts +0 -2
- package/dist/commands/testimonials/index.d.ts.map +0 -1
- package/dist/commands/testimonials/index.js +0 -22
- package/dist/commands/testimonials/index.js.map +0 -1
- package/dist/commands/testimonials/list.d.ts +0 -60
- package/dist/commands/testimonials/list.d.ts.map +0 -1
- package/dist/commands/testimonials/list.js +0 -69
- package/dist/commands/testimonials/list.js.map +0 -1
- package/dist/commands/testimonials/search.d.ts +0 -40
- package/dist/commands/testimonials/search.d.ts.map +0 -1
- package/dist/commands/testimonials/search.js +0 -59
- package/dist/commands/testimonials/search.js.map +0 -1
- package/dist/commands/videos/delete.d.ts +0 -19
- package/dist/commands/videos/delete.d.ts.map +0 -1
- package/dist/commands/videos/delete.js +0 -58
- package/dist/commands/videos/delete.js.map +0 -1
- package/dist/commands/videos/get.d.ts +0 -30
- package/dist/commands/videos/get.d.ts.map +0 -1
- package/dist/commands/videos/get.js +0 -42
- package/dist/commands/videos/get.js.map +0 -1
- package/dist/commands/videos/index.d.ts +0 -2
- package/dist/commands/videos/index.d.ts.map +0 -1
- package/dist/commands/videos/index.js +0 -25
- package/dist/commands/videos/index.js.map +0 -1
- package/dist/commands/videos/search.d.ts +0 -35
- package/dist/commands/videos/search.d.ts.map +0 -1
- package/dist/commands/videos/search.js +0 -54
- package/dist/commands/videos/search.js.map +0 -1
- package/dist/commands/videos/upload.d.ts +0 -19
- package/dist/commands/videos/upload.d.ts.map +0 -1
- package/dist/commands/videos/upload.js +0 -92
- package/dist/commands/videos/upload.js.map +0 -1
- package/dist/env.d.ts +0 -15
- package/dist/env.d.ts.map +0 -1
- package/dist/env.js +0 -39
- package/dist/env.js.map +0 -1
- package/dist/error-handler.d.ts +0 -8
- package/dist/error-handler.d.ts.map +0 -1
- package/dist/error-handler.js +0 -46
- package/dist/error-handler.js.map +0 -1
- package/dist/geo-context.d.ts +0 -21
- package/dist/geo-context.d.ts.map +0 -1
- package/dist/geo-context.js +0 -208
- package/dist/geo-context.js.map +0 -1
- package/dist/output.d.ts +0 -43
- package/dist/output.d.ts.map +0 -1
- package/dist/output.js +0 -182
- package/dist/output.js.map +0 -1
- package/dist/output.test.d.ts +0 -2
- package/dist/output.test.d.ts.map +0 -1
- package/dist/output.test.js +0 -117
- package/dist/output.test.js.map +0 -1
- package/dist/schemas.d.ts +0 -17
- package/dist/schemas.d.ts.map +0 -1
- package/dist/schemas.js +0 -11
- package/dist/schemas.js.map +0 -1
package/README.md
CHANGED
|
@@ -1592,15 +1592,28 @@ Each external source is its own subcommand. Pick the verb that matches the sourc
|
|
|
1592
1592
|
| `baker images ingest <url>` | Save a remote URL to the library | ~$0.001–$0.002 (describe + embed) | always on |
|
|
1593
1593
|
| `baker images use <url>` | Sugar over `ingest` — waits until `ready` | same as `ingest` | always on |
|
|
1594
1594
|
| `baker images get <id>` | Single record | $0 | n/a |
|
|
1595
|
-
| `baker images upload <file>` | Upload a local file | $0 | always on |
|
|
1595
|
+
| `baker images upload <file\|url>` | Upload a local file OR remote URL to the library | $0 (local) / ~$0.001–$0.002 describe+embed (remote) | always on |
|
|
1596
1596
|
| `baker images delete <id>` | Delete a record | $0 | n/a |
|
|
1597
1597
|
|
|
1598
1598
|
**Auto-ingest** runs the full `processImage` pipeline (Gemini describe + Voyage multimodal embed + OpenRouter text embed, ~$0.001–$0.002/image) on top of the provider cost. Override with `--auto-ingest N` (turn on) or `--no-auto-ingest` (turn off where default is on). After auto-ingest the next `baker images library` query for the same concept hits the local row.
|
|
1599
1599
|
|
|
1600
|
+
**Provider context biases the description.** When a hit carries human-readable text (Giphy `alt_text` / `title`, Magnific `title`, Brandfetch type+theme, etc.) it's surfaced on the hit as `descriptionContext` and forwarded to Gemini during auto-ingest as a hint — Gemini still trusts the pixels (e.g. it'll correct a wrong botanical name) but uses the hint for cultural/brand/scene awareness it can't infer from bytes alone.
|
|
1601
|
+
|
|
1602
|
+
**`--context` is available on every command that adds an image to the library** — `ingest`, `use`, `upload`, `find`, `extract`, `screenshot`, `logo`, `stock`, `google`, `icon`, `gif`, `sticker`. On auto-ingest paths it **overrides** the provider-derived `descriptionContext` for every hit that gets ingested. Especially valuable for brand-vs-competitor disambiguation — Gemini cannot tell from pixels alone whether an icon belongs to "Stripe (integration partner)" vs "Stripe (competitor)". Concrete cases:
|
|
1603
|
+
|
|
1604
|
+
```bash
|
|
1605
|
+
baker images logo stripe.com --context "Stripe — payments integration partner shown in the integrations grid"
|
|
1606
|
+
baker images logo acme.com --context "Acme — direct competitor brand mark"
|
|
1607
|
+
baker images upload ./cert.png --context "ISO 27001 certification badge — show on enterprise pricing tier"
|
|
1608
|
+
baker images screenshot https://competitor.com/pricing --context "Competitor pricing page captured for comparison hero"
|
|
1609
|
+
```
|
|
1610
|
+
|
|
1600
1611
|
**Hash-dedup is automatic.** `contentHash` (sha256 of bytes) + `externalId` per-source — same JPEG from two providers becomes one library row.
|
|
1601
1612
|
|
|
1602
1613
|
**`baker images search` is a deprecated alias** for `library` (stderr deprecation log, removed in next minor).
|
|
1603
1614
|
|
|
1615
|
+
**Migrating from Tenor:** the old `baker images meme` command and Tenor provider have been removed. Use `baker images gif` (Giphy) instead. Existing library rows ingested via Tenor remain stored with `source: "tenor"` but are no longer returned by `baker images find` and `--source tenor` is no longer a valid filter on `library`. Re-ingest via `baker images gif --auto-ingest N` if you need fresh equivalents.
|
|
1616
|
+
|
|
1604
1617
|
### `baker images library <query>`
|
|
1605
1618
|
|
|
1606
1619
|
Search the company library (hybrid BM25 + vector + Cohere rerank). Use this FIRST before any external provider.
|
|
@@ -1638,7 +1651,7 @@ baker images find "office" --sources library,magnific --fallback --threshold 0.4
|
|
|
1638
1651
|
baker images find "celebration" --sources library,giphy --auto-ingest 3
|
|
1639
1652
|
```
|
|
1640
1653
|
|
|
1641
|
-
Providers: `library`, `magnific`, `google`, `iconify`, `
|
|
1654
|
+
Providers: `library`, `magnific`, `google`, `iconify`, `giphy`. Brandfetch is not part of the fanout — it takes a domain, not a query, so it lives at `baker images logo <domain>`. Response shape: `{ groups: { library, external }, meta: { counts, errors } }`. Partial failures (one provider throws) return the successful providers plus a `meta.errors` array; the whole call never fails on a single provider error.
|
|
1642
1655
|
|
|
1643
1656
|
**Flags:**
|
|
1644
1657
|
|
|
@@ -1649,6 +1662,7 @@ Providers: `library`, `magnific`, `google`, `iconify`, `brandfetch`, `giphy`. Re
|
|
|
1649
1662
|
| `--fallback` | Skip external providers when the top library score ≥ `--threshold` |
|
|
1650
1663
|
| `--threshold` | Library score floor for `--fallback` (default `0.4`) |
|
|
1651
1664
|
| `--auto-ingest` | Ingest top N external hits into the library (0–20, default 0) |
|
|
1665
|
+
| `--context` | Free-text hint passed to Gemini describe to bias the generated description and tags (overrides provider-derived context on auto-ingest paths) |
|
|
1652
1666
|
|
|
1653
1667
|
### `baker images stock <query>`
|
|
1654
1668
|
|
|
@@ -1678,6 +1692,7 @@ Cost: $0.002/req. Free tier exists but watermarks previews — pass `--license f
|
|
|
1678
1692
|
| `--limit` | Max results (1–50, default 10) |
|
|
1679
1693
|
| `--page` | Page number for pagination |
|
|
1680
1694
|
| `--auto-ingest` | Ingest top N hits (0–20, default 0) |
|
|
1695
|
+
| `--context` | Free-text hint passed to Gemini describe to bias the generated description and tags (overrides provider-derived context on auto-ingest paths) |
|
|
1681
1696
|
|
|
1682
1697
|
### `baker images google <query>`
|
|
1683
1698
|
|
|
@@ -1701,25 +1716,75 @@ Requires both `GOOGLE_CUSTOM_SEARCH_API_KEY` and `GOOGLE_CUSTOM_SEARCH_ENGINE_ID
|
|
|
1701
1716
|
| `--safe` | `off \| active` |
|
|
1702
1717
|
| `--limit` | Max results (1–50, paginated 10 per call) |
|
|
1703
1718
|
| `--auto-ingest` | Ingest top N (0–20, default 0) |
|
|
1719
|
+
| `--context` | Free-text hint passed to Gemini describe to bias the generated description and tags (overrides provider-derived context on auto-ingest paths) |
|
|
1704
1720
|
|
|
1705
1721
|
### `baker images logo <domain>`
|
|
1706
1722
|
|
|
1707
|
-
Brand logo via Brandfetch CDN (`fallback/404`).
|
|
1723
|
+
Brand logo via Brandfetch CDN (`fallback/404`). Probes all 5 logo variants in parallel and returns whichever ones the domain actually publishes. Auto-ingests the first by default.
|
|
1708
1724
|
|
|
1709
1725
|
```bash
|
|
1710
|
-
baker images logo stripe.com
|
|
1711
|
-
baker images logo linear.app --variant logo
|
|
1712
|
-
baker images logo
|
|
1726
|
+
baker images logo stripe.com # all available variants
|
|
1727
|
+
baker images logo linear.app --variant logo # just full wordmark logos (light + dark)
|
|
1728
|
+
baker images logo linear.app --variant icon # just the square app icon
|
|
1729
|
+
baker images logo linear.app --variant symbol # just the bare brand mark (no wordmark), light + dark
|
|
1730
|
+
baker images logo example.com --no-auto-ingest # browse without writing to library
|
|
1731
|
+
baker images logo stripe.com --auto-ingest 5 # ingest every returned variant
|
|
1732
|
+
```
|
|
1733
|
+
|
|
1734
|
+
**The 5 variants — pick by use case:**
|
|
1735
|
+
|
|
1736
|
+
| `--variant` | `providerMeta.type` | `providerMeta.theme` | What it is | Typical use |
|
|
1737
|
+
|---|---|---|---|---|
|
|
1738
|
+
| `icon` | `icon` | `null` (single) | App-style square icon (favicon-grade), often rounded | Favicon, social proof grid, app-tile mock |
|
|
1739
|
+
| `logo` | `logo` | `light` | Full wordmark designed for **light backgrounds** (dark ink on transparent) | Logo on white page, light hero |
|
|
1740
|
+
| `logo` | `logo` | `dark` | Full wordmark designed for **dark backgrounds** (light ink on transparent) | Footer on dark, dark hero |
|
|
1741
|
+
| `symbol` | `symbol` | `light` | Brand mark/glyph only (no wordmark) for **light backgrounds** | Compact UI, avatar, small-space placement |
|
|
1742
|
+
| `symbol` | `symbol` | `dark` | Brand mark/glyph only for **dark backgrounds** | Dark-mode compact UI |
|
|
1743
|
+
|
|
1744
|
+
Variants that don't exist for a domain are silently skipped — `linear.app` returns all 5, smaller brands may return only `icon + logo/light`. To enumerate exactly what a brand has, run with no `--variant` and inspect `providerMeta`.
|
|
1745
|
+
|
|
1746
|
+
**Response:**
|
|
1747
|
+
|
|
1748
|
+
```json
|
|
1749
|
+
{
|
|
1750
|
+
"ok": true,
|
|
1751
|
+
"data": {
|
|
1752
|
+
"hits": [
|
|
1753
|
+
{
|
|
1754
|
+
"source": "brandfetch",
|
|
1755
|
+
"url": "https://cdn.brandfetch.io/domain/linear.app/fallback/404/h/400/w/400/icon?c=…",
|
|
1756
|
+
"externalId": "linear.app:icon:none",
|
|
1757
|
+
"externalUrl": "https://linear.app",
|
|
1758
|
+
"descriptionContext": "linear.app brand icon",
|
|
1759
|
+
"providerMeta": { "type": "icon", "theme": null, "contentType": "image/png" }
|
|
1760
|
+
},
|
|
1761
|
+
{
|
|
1762
|
+
"source": "brandfetch",
|
|
1763
|
+
"url": "https://cdn.brandfetch.io/domain/linear.app/fallback/404/theme/light/h/400/w/400/logo?c=…",
|
|
1764
|
+
"externalId": "linear.app:logo:light",
|
|
1765
|
+
"providerMeta": { "type": "logo", "theme": "light", "contentType": "image/svg+xml" }
|
|
1766
|
+
},
|
|
1767
|
+
{ "providerMeta": { "type": "logo", "theme": "dark" }, "…": "…" },
|
|
1768
|
+
{ "providerMeta": { "type": "symbol", "theme": "light" }, "…": "…" },
|
|
1769
|
+
{ "providerMeta": { "type": "symbol", "theme": "dark" }, "…": "…" }
|
|
1770
|
+
],
|
|
1771
|
+
"ingested": [{ "imageId": "…", "deduped": false }]
|
|
1772
|
+
}
|
|
1773
|
+
}
|
|
1713
1774
|
```
|
|
1714
1775
|
|
|
1715
|
-
|
|
1776
|
+
The `externalId` shape is stable (`<domain>:<type>:<theme|none>`) — safe to use as a dedup key. Bytes are not prefetched into the response (Convex cache size limit); ingest re-fetches the CDN URL on demand.
|
|
1777
|
+
|
|
1778
|
+
If the domain isn't in Brandfetch at all the `hits` array is empty — fall back to `baker images extract https://<domain>` to pull the logo from the site directly.
|
|
1716
1779
|
|
|
1717
1780
|
**Flags:**
|
|
1718
1781
|
|
|
1719
1782
|
| Flag | Description |
|
|
1720
1783
|
|---------------------|--------------------------------------------------------------------------|
|
|
1721
|
-
| `--variant` | Pin to one variant: `icon \| logo \| symbol` (default:
|
|
1784
|
+
| `--variant` | Pin to one variant family: `icon \| logo \| symbol` (default: probe all 5). Combined with `--auto-ingest` you'll ingest both light + dark for `logo`/`symbol`. |
|
|
1785
|
+
| `--auto-ingest` | Ingest top N hits (0–20). Defaults to **1** (the first variant returned). Pass `5` to ingest every variant; pass `0` or `--no-auto-ingest` to browse without writing. |
|
|
1722
1786
|
| `--no-auto-ingest` | Skip the default top-1 ingest |
|
|
1787
|
+
| `--context` | Free-text hint passed to Gemini describe to bias the generated description and tags (overrides provider-derived context on auto-ingest paths). **Use this to distinguish competitor / partner / integration logos** — e.g. `--context "Stripe — payments integration partner"` vs `--context "Stripe — direct competitor"`. |
|
|
1723
1788
|
|
|
1724
1789
|
### `baker images icon <name> [--set <set>]`
|
|
1725
1790
|
|
|
@@ -1740,6 +1805,7 @@ Pass a prefixed id (`lucide:check`) to pin both set and name explicitly. Without
|
|
|
1740
1805
|
| `--set` | Iconify set (`simple-icons`, `logos`, `lucide`, `devicon`, `heroicons`, `tabler`, `phosphor`, …) |
|
|
1741
1806
|
| `--color` | Hex color — replaces `currentColor` in the SVG |
|
|
1742
1807
|
| `--width` | Render width in px (height auto-scales) |
|
|
1808
|
+
| `--context`| Free-text hint passed to Gemini describe to bias the generated description and tags (overrides provider-derived context on auto-ingest paths) |
|
|
1743
1809
|
|
|
1744
1810
|
### `baker images gif <query>`
|
|
1745
1811
|
|
|
@@ -1763,6 +1829,7 @@ Each hit returns the primary URL (WebP — best for ingest) plus `providerMeta.g
|
|
|
1763
1829
|
| `--rating` | Content rating: `g \| pg \| pg-13 \| r` (default `pg`) |
|
|
1764
1830
|
| `--lang` | ISO 639-1 language code (`en`, `es`, `fr`, …) to bias results |
|
|
1765
1831
|
| `--auto-ingest` | Ingest top N (0–20, default 0). Ingest uses the WebP URL; `processImage` partial-fails on animated GIFs (no thumbhash/palette) but describe + embed still work. |
|
|
1832
|
+
| `--context` | Free-text hint passed to Gemini describe to bias the generated description and tags (overrides provider-derived context on auto-ingest paths) |
|
|
1766
1833
|
|
|
1767
1834
|
### `baker images sticker <query>`
|
|
1768
1835
|
|
|
@@ -1776,7 +1843,7 @@ baker images sticker --trending --limit 25
|
|
|
1776
1843
|
|
|
1777
1844
|
Same response shape as `gif`. `providerMeta.kind` is `"sticker"`; `externalUrl` points at `https://giphy.com/stickers/<id>`.
|
|
1778
1845
|
|
|
1779
|
-
**Flags:** identical to `baker images gif` (`--trending`, `--limit`, `--rating`, `--lang`, `--auto-ingest`).
|
|
1846
|
+
**Flags:** identical to `baker images gif` (`--trending`, `--limit`, `--rating`, `--lang`, `--auto-ingest`, `--context`).
|
|
1780
1847
|
|
|
1781
1848
|
### `baker images extract <url>`
|
|
1782
1849
|
|
|
@@ -1798,6 +1865,7 @@ Cost: $0.001/scrape. JS-rendered pages with `--wait-for` cost the heavier credit
|
|
|
1798
1865
|
| `--wait-for` | JS render wait in ms (0–30000) |
|
|
1799
1866
|
| `--limit` | Max images returned (default 50) |
|
|
1800
1867
|
| `--auto-ingest` | Ingest top N (0–20, default 0) |
|
|
1868
|
+
| `--context` | Free-text hint passed to Gemini describe to bias the generated description and tags (overrides provider-derived context on auto-ingest paths) |
|
|
1801
1869
|
|
|
1802
1870
|
### `baker images screenshot <url>`
|
|
1803
1871
|
|
|
@@ -1820,6 +1888,7 @@ Cost: $0.009/capture. ScreenshotOne caches captures for 30 days, so re-shotting
|
|
|
1820
1888
|
| `--full-page` | Capture the full scrolled page (default: viewport only) |
|
|
1821
1889
|
| `--viewport` | `WxH` viewport (default `1280x800`) |
|
|
1822
1890
|
| `--format` | `webp \| png \| jpg` (default `webp`) |
|
|
1891
|
+
| `--context` | Free-text hint passed to Gemini describe to bias the generated description and tags (always auto-ingests, so this overrides the URL-derived context) |
|
|
1823
1892
|
|
|
1824
1893
|
### `baker images ingest <url> --source <enum>`
|
|
1825
1894
|
|
|
@@ -1856,6 +1925,7 @@ baker images use https://cdn.example.com/hero.png --source magnific --max-wait 6
|
|
|
1856
1925
|
|----------------|--------------------------------------------------------------------------------------------|
|
|
1857
1926
|
| `--source` | Source enum (default `uploaded`) |
|
|
1858
1927
|
| `--max-wait` | Max wait ms before returning `TIMEOUT` (default `30000`, polled every 1500ms) |
|
|
1928
|
+
| `--context` | Free-text hint passed to Gemini describe to bias the generated description and tags |
|
|
1859
1929
|
|
|
1860
1930
|
### `baker images get <id>`
|
|
1861
1931
|
|
|
@@ -1866,17 +1936,36 @@ baker images get j571abc123def
|
|
|
1866
1936
|
baker images get j571abc123def --full
|
|
1867
1937
|
```
|
|
1868
1938
|
|
|
1869
|
-
### `baker images upload <file>`
|
|
1939
|
+
### `baker images upload <file|url>`
|
|
1870
1940
|
|
|
1871
|
-
|
|
1941
|
+
Add an image to the library — accepts a **local file path** or a **remote `http(s)://` URL**. The positional arg is sniffed: if it starts with `http://` or `https://`, the call dispatches to `/api/images/ingest` (hash-deduped on bytes + externalId, byte-fetch happens server-side); otherwise the local file is read, base64-encoded, and sent to `/api/images/upload`.
|
|
1872
1942
|
|
|
1873
1943
|
```bash
|
|
1944
|
+
# Local file
|
|
1874
1945
|
baker images upload ./logo.png
|
|
1875
1946
|
baker images upload ./banner.jpg --source uploaded
|
|
1876
1947
|
baker images upload ./logo.png --dry-run
|
|
1948
|
+
baker images upload ./certificate.png --context "ISO 27001 certification badge — show on enterprise pricing tier"
|
|
1949
|
+
|
|
1950
|
+
# Remote URL — dispatches to ingest
|
|
1951
|
+
baker images upload https://acme.com/hero.png --source firecrawl --external-url https://acme.com/pricing --context "Acme — competitor pricing hero"
|
|
1952
|
+
baker images upload https://cdn.example.com/team.jpg --source uploaded --context "Real team photo from 2024 offsite — use on About page"
|
|
1877
1953
|
```
|
|
1878
1954
|
|
|
1879
|
-
|
|
1955
|
+
Local-mode supported extensions: `.png`, `.jpg`, `.jpeg`, `.gif`, `.webp`, `.svg`, `.avif`. Remote mode supports anything the ingest pipeline can fetch (25 MB cap).
|
|
1956
|
+
|
|
1957
|
+
**Flags:**
|
|
1958
|
+
|
|
1959
|
+
| Flag | Mode | Description |
|
|
1960
|
+
|------------------|--------|--------------------------------------------------------------------------------------------|
|
|
1961
|
+
| `--source` | both | Source enum (default `uploaded`). For remote URLs prefer `firecrawl`, `magnific`, etc. to match the origin |
|
|
1962
|
+
| `--content-type` | local | MIME type override (default: inferred from file extension). Ignored for URLs |
|
|
1963
|
+
| `--external-id` | remote | Provider asset id — enables per-source dedup before bytes are fetched |
|
|
1964
|
+
| `--external-url` | remote | Canonical page URL (parent page for scraped/Google hits, provider page for stock) |
|
|
1965
|
+
| `--dry-run` | both | Validate inputs without writing |
|
|
1966
|
+
| `--context` | both | Free-text hint passed to Gemini describe to bias the generated description and tags |
|
|
1967
|
+
|
|
1968
|
+
`baker images upload <url>` is functionally equivalent to `baker images ingest <url> --source <enum>` — use whichever verb reads more naturally in your agent prompt.
|
|
1880
1969
|
|
|
1881
1970
|
### `baker images delete <id>`
|
|
1882
1971
|
|
package/package.json
CHANGED
package/dist/cli.d.ts
DELETED
package/dist/cli.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":""}
|
package/dist/cli.js
DELETED
|
@@ -1,37 +0,0 @@
|
|
|
1
|
-
#!/usr/bin/env node
|
|
2
|
-
import { defineCommand, runMain } from "citty";
|
|
3
|
-
import { actionsCommand } from "./commands/actions/index.js";
|
|
4
|
-
import { adsCommand } from "./commands/ads/index.js";
|
|
5
|
-
import { ga4Command } from "./commands/ga4/index.js";
|
|
6
|
-
import { gscCommand } from "./commands/gsc/index.js";
|
|
7
|
-
import { imagesCommand } from "./commands/images/index.js";
|
|
8
|
-
import { researchCommand } from "./commands/research/index.js";
|
|
9
|
-
import { schemaCommand } from "./commands/schema.js";
|
|
10
|
-
import { testimonialsCommand } from "./commands/testimonials/index.js";
|
|
11
|
-
import { videosCommand } from "./commands/videos/index.js";
|
|
12
|
-
const main = defineCommand({
|
|
13
|
-
meta: {
|
|
14
|
-
name: "baker",
|
|
15
|
-
version: "0.32.0",
|
|
16
|
-
description: `AI-agent CLI for finding and managing images, videos, testimonials, action items, and ad platform data in Baker.
|
|
17
|
-
|
|
18
|
-
Auth: Set BAKER_API_KEY (starts with bk_) and BAKER_API_URL environment variables.
|
|
19
|
-
Chat: Set BAKER_CHAT_ID for action commands that stage changes against a chat.
|
|
20
|
-
Output: All commands return JSON envelopes: { ok: true, data: ... } or { ok: false, error: { code, message } }.
|
|
21
|
-
Formats: Use --output json|csv|jsonl|files|md to control output format. Default: json.
|
|
22
|
-
Introspection: Run 'baker schema <command>' to inspect argument schemas.`,
|
|
23
|
-
},
|
|
24
|
-
subCommands: {
|
|
25
|
-
actions: actionsCommand,
|
|
26
|
-
ads: adsCommand,
|
|
27
|
-
ga4: ga4Command,
|
|
28
|
-
gsc: gscCommand,
|
|
29
|
-
research: researchCommand,
|
|
30
|
-
images: imagesCommand,
|
|
31
|
-
videos: videosCommand,
|
|
32
|
-
testimonials: testimonialsCommand,
|
|
33
|
-
schema: schemaCommand,
|
|
34
|
-
},
|
|
35
|
-
});
|
|
36
|
-
runMain(main);
|
|
37
|
-
//# sourceMappingURL=cli.js.map
|
package/dist/cli.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,aAAa,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAC/C,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAC7D,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAC/D,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,mBAAmB,EAAE,MAAM,kCAAkC,CAAC;AACvE,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAE3D,MAAM,IAAI,GAAG,aAAa,CAAC;IACzB,IAAI,EAAE;QACJ,IAAI,EAAE,OAAO;QACb,OAAO,EAAE,QAAQ;QACjB,WAAW,EAAE;;;;;;yEAMwD;KACtE;IACD,WAAW,EAAE;QACX,OAAO,EAAE,cAAc;QACvB,GAAG,EAAE,UAAU;QACf,GAAG,EAAE,UAAU;QACf,GAAG,EAAE,UAAU;QACf,QAAQ,EAAE,eAAe;QACzB,MAAM,EAAE,aAAa;QACrB,MAAM,EAAE,aAAa;QACrB,YAAY,EAAE,mBAAmB;QACjC,MAAM,EAAE,aAAa;KACtB;CACF,CAAC,CAAC;AAEH,OAAO,CAAC,IAAI,CAAC,CAAC"}
|
package/dist/client.d.ts
DELETED
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
type ErrorCode = "UNAUTHORIZED" | "NOT_FOUND" | "VALIDATION_ERROR" | "RATE_LIMITED" | "INTERNAL_ERROR" | "NETWORK_ERROR" | "TIMEOUT";
|
|
2
|
-
export declare class ApiError extends Error {
|
|
3
|
-
code: ErrorCode;
|
|
4
|
-
constructor(code: ErrorCode, message: string);
|
|
5
|
-
}
|
|
6
|
-
export declare function validateConvexId(id: string): void;
|
|
7
|
-
export declare function apiGet<T>(path: string, params?: Record<string, string>): Promise<T>;
|
|
8
|
-
export declare function apiPost<T>(path: string, body: unknown, opts?: {
|
|
9
|
-
timeoutMs?: number;
|
|
10
|
-
}): Promise<T>;
|
|
11
|
-
export {};
|
|
12
|
-
//# sourceMappingURL=client.d.ts.map
|
package/dist/client.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AA6BA,KAAK,SAAS,GACV,cAAc,GACd,WAAW,GACX,kBAAkB,GAClB,cAAc,GACd,gBAAgB,GAChB,eAAe,GACf,SAAS,CAAC;AAEd,qBAAa,QAAS,SAAQ,KAAK;IACjC,IAAI,EAAE,SAAS,CAAC;gBAEJ,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM;CAK7C;AAqBD,wBAAgB,gBAAgB,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,CAIjD;AAsDD,wBAAsB,MAAM,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CA4BzF;AAED,wBAAsB,OAAO,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,EAAE;IAAE,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,OAAO,CAAC,CAAC,CAAC,CAuBvG"}
|
package/dist/client.js
DELETED
|
@@ -1,153 +0,0 @@
|
|
|
1
|
-
import { getEnv } from "./env.js";
|
|
2
|
-
const MAX_RATE_LIMIT_RETRIES = 3;
|
|
3
|
-
const MAX_TOTAL_WAIT_MS = 2 * 60 * 1000;
|
|
4
|
-
async function fetchWithRateLimitRetry(url, init) {
|
|
5
|
-
let totalWaited = 0;
|
|
6
|
-
for (let attempt = 0; attempt <= MAX_RATE_LIMIT_RETRIES; attempt++) {
|
|
7
|
-
const response = await fetch(url, init);
|
|
8
|
-
if (response.status !== 429 || attempt >= MAX_RATE_LIMIT_RETRIES) {
|
|
9
|
-
return response;
|
|
10
|
-
}
|
|
11
|
-
const retryAfterHeader = response.headers.get("Retry-After");
|
|
12
|
-
const waitMs = retryAfterHeader ? Number(retryAfterHeader) * 1000 : 2000 * 2 ** attempt;
|
|
13
|
-
if (totalWaited + waitMs > MAX_TOTAL_WAIT_MS) {
|
|
14
|
-
return response;
|
|
15
|
-
}
|
|
16
|
-
totalWaited += waitMs;
|
|
17
|
-
await new Promise((resolve) => setTimeout(resolve, waitMs));
|
|
18
|
-
}
|
|
19
|
-
return fetch(url, init);
|
|
20
|
-
}
|
|
21
|
-
export class ApiError extends Error {
|
|
22
|
-
code;
|
|
23
|
-
constructor(code, message) {
|
|
24
|
-
super(message);
|
|
25
|
-
this.name = "ApiError";
|
|
26
|
-
this.code = code;
|
|
27
|
-
}
|
|
28
|
-
}
|
|
29
|
-
const CONVEX_ID_RE = /^[a-zA-Z0-9_]+$/;
|
|
30
|
-
function hasControlCharacters(value) {
|
|
31
|
-
for (let i = 0; i < value.length; i++) {
|
|
32
|
-
const code = value.charCodeAt(i);
|
|
33
|
-
// Allow tab (9), newline (10), carriage return (13)
|
|
34
|
-
if (code < 32 && code !== 9 && code !== 10 && code !== 13) {
|
|
35
|
-
return true;
|
|
36
|
-
}
|
|
37
|
-
}
|
|
38
|
-
return false;
|
|
39
|
-
}
|
|
40
|
-
function validateStringValue(value) {
|
|
41
|
-
if (hasControlCharacters(value)) {
|
|
42
|
-
throw new ApiError("VALIDATION_ERROR", "String value contains invalid control characters");
|
|
43
|
-
}
|
|
44
|
-
}
|
|
45
|
-
export function validateConvexId(id) {
|
|
46
|
-
if (!CONVEX_ID_RE.test(id)) {
|
|
47
|
-
throw new ApiError("VALIDATION_ERROR", `Invalid ID format: "${id}". Expected alphanumeric string.`);
|
|
48
|
-
}
|
|
49
|
-
}
|
|
50
|
-
function sanitizeParams(params) {
|
|
51
|
-
const sanitized = {};
|
|
52
|
-
for (const [key, value] of Object.entries(params)) {
|
|
53
|
-
validateStringValue(value);
|
|
54
|
-
sanitized[key] = value;
|
|
55
|
-
}
|
|
56
|
-
return sanitized;
|
|
57
|
-
}
|
|
58
|
-
function mapHttpError(status) {
|
|
59
|
-
if (status === 401 || status === 403) {
|
|
60
|
-
return "UNAUTHORIZED";
|
|
61
|
-
}
|
|
62
|
-
if (status === 404) {
|
|
63
|
-
return "NOT_FOUND";
|
|
64
|
-
}
|
|
65
|
-
if (status === 422 || status === 400) {
|
|
66
|
-
return "VALIDATION_ERROR";
|
|
67
|
-
}
|
|
68
|
-
if (status === 429) {
|
|
69
|
-
return "RATE_LIMITED";
|
|
70
|
-
}
|
|
71
|
-
return "INTERNAL_ERROR";
|
|
72
|
-
}
|
|
73
|
-
async function handleResponse(response) {
|
|
74
|
-
const body = await response.text();
|
|
75
|
-
if (!response.ok) {
|
|
76
|
-
let message = `HTTP ${response.status}: ${response.statusText}`;
|
|
77
|
-
try {
|
|
78
|
-
const parsed = JSON.parse(body);
|
|
79
|
-
if (typeof parsed.error === "string") {
|
|
80
|
-
message = parsed.error;
|
|
81
|
-
}
|
|
82
|
-
else if (parsed.error?.message) {
|
|
83
|
-
message = parsed.error.message;
|
|
84
|
-
}
|
|
85
|
-
else if (parsed.message) {
|
|
86
|
-
message = parsed.message;
|
|
87
|
-
}
|
|
88
|
-
}
|
|
89
|
-
catch {
|
|
90
|
-
// Use default message
|
|
91
|
-
}
|
|
92
|
-
throw new ApiError(mapHttpError(response.status), message);
|
|
93
|
-
}
|
|
94
|
-
try {
|
|
95
|
-
return JSON.parse(body);
|
|
96
|
-
}
|
|
97
|
-
catch {
|
|
98
|
-
throw new ApiError("INTERNAL_ERROR", "Failed to parse API response as JSON");
|
|
99
|
-
}
|
|
100
|
-
}
|
|
101
|
-
export async function apiGet(path, params) {
|
|
102
|
-
const env = getEnv();
|
|
103
|
-
const url = new URL(path, env.BAKER_API_URL);
|
|
104
|
-
if (params) {
|
|
105
|
-
const clean = sanitizeParams(params);
|
|
106
|
-
for (const [key, value] of Object.entries(clean)) {
|
|
107
|
-
url.searchParams.set(key, value);
|
|
108
|
-
}
|
|
109
|
-
}
|
|
110
|
-
let response;
|
|
111
|
-
try {
|
|
112
|
-
response = await fetchWithRateLimitRetry(url.toString(), {
|
|
113
|
-
method: "GET",
|
|
114
|
-
headers: {
|
|
115
|
-
Authorization: `Bearer ${env.BAKER_API_KEY}`,
|
|
116
|
-
Accept: "application/json",
|
|
117
|
-
},
|
|
118
|
-
signal: AbortSignal.timeout(60_000),
|
|
119
|
-
});
|
|
120
|
-
}
|
|
121
|
-
catch (err) {
|
|
122
|
-
if (err instanceof Error && (err.name === "TimeoutError" || err.name === "AbortError")) {
|
|
123
|
-
throw new ApiError("TIMEOUT", "Request timed out after 60 seconds");
|
|
124
|
-
}
|
|
125
|
-
throw new ApiError("NETWORK_ERROR", `Request failed: ${err instanceof Error ? err.message : "Unknown error"}`);
|
|
126
|
-
}
|
|
127
|
-
return handleResponse(response);
|
|
128
|
-
}
|
|
129
|
-
export async function apiPost(path, body, opts) {
|
|
130
|
-
const env = getEnv();
|
|
131
|
-
const timeoutMs = opts?.timeoutMs ?? 60_000;
|
|
132
|
-
let response;
|
|
133
|
-
try {
|
|
134
|
-
response = await fetchWithRateLimitRetry(new URL(path, env.BAKER_API_URL).toString(), {
|
|
135
|
-
method: "POST",
|
|
136
|
-
headers: {
|
|
137
|
-
Authorization: `Bearer ${env.BAKER_API_KEY}`,
|
|
138
|
-
"Content-Type": "application/json",
|
|
139
|
-
Accept: "application/json",
|
|
140
|
-
},
|
|
141
|
-
body: JSON.stringify(body),
|
|
142
|
-
signal: AbortSignal.timeout(timeoutMs),
|
|
143
|
-
});
|
|
144
|
-
}
|
|
145
|
-
catch (err) {
|
|
146
|
-
if (err instanceof Error && (err.name === "TimeoutError" || err.name === "AbortError")) {
|
|
147
|
-
throw new ApiError("TIMEOUT", `Request timed out after ${Math.round(timeoutMs / 1000)} seconds`);
|
|
148
|
-
}
|
|
149
|
-
throw new ApiError("NETWORK_ERROR", `Request failed: ${err instanceof Error ? err.message : "Unknown error"}`);
|
|
150
|
-
}
|
|
151
|
-
return handleResponse(response);
|
|
152
|
-
}
|
|
153
|
-
//# sourceMappingURL=client.js.map
|
package/dist/client.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
export declare const claimCommand: import("citty").CommandDef<{
|
|
2
|
-
readonly id: {
|
|
3
|
-
readonly type: "positional";
|
|
4
|
-
readonly description: "Action ID";
|
|
5
|
-
readonly required: false;
|
|
6
|
-
};
|
|
7
|
-
readonly "action-id": {
|
|
8
|
-
readonly type: "string";
|
|
9
|
-
readonly description: "Action ID";
|
|
10
|
-
readonly required: false;
|
|
11
|
-
};
|
|
12
|
-
}>;
|
|
13
|
-
//# sourceMappingURL=claim.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"claim.d.ts","sourceRoot":"","sources":["../../../src/commands/actions/claim.ts"],"names":[],"mappings":"AAuBA,eAAO,MAAM,YAAY;;;;;;;;;;;EAgCvB,CAAC"}
|
|
@@ -1,45 +0,0 @@
|
|
|
1
|
-
import { defineCommand } from "citty";
|
|
2
|
-
import { apiPost, validateConvexId } from "../../client.js";
|
|
3
|
-
import { requireChatId } from "../../env.js";
|
|
4
|
-
import { writeJson } from "../../output.js";
|
|
5
|
-
import { registerSchema } from "../../schemas.js";
|
|
6
|
-
import { failApi, failValidation } from "./shared.js";
|
|
7
|
-
registerSchema({
|
|
8
|
-
command: "actions.claim",
|
|
9
|
-
description: "Claim an action for the current chat (live — visible to other chats immediately). Returns action details with tags and description to help decide which skills to load.",
|
|
10
|
-
args: {
|
|
11
|
-
id: { type: "string", description: "Action ID", required: true },
|
|
12
|
-
},
|
|
13
|
-
});
|
|
14
|
-
export const claimCommand = defineCommand({
|
|
15
|
-
meta: {
|
|
16
|
-
name: "claim",
|
|
17
|
-
description: "Claim an action so other chats see you're working on it. Required before update/complete/discard. Example: baker actions claim <action-id>",
|
|
18
|
-
},
|
|
19
|
-
args: {
|
|
20
|
-
id: { type: "positional", description: "Action ID", required: false },
|
|
21
|
-
"action-id": { type: "string", description: "Action ID", required: false },
|
|
22
|
-
},
|
|
23
|
-
run: async ({ args }) => {
|
|
24
|
-
try {
|
|
25
|
-
const id = args.id || args["action-id"];
|
|
26
|
-
if (!id) {
|
|
27
|
-
failValidation("Action ID is required.");
|
|
28
|
-
}
|
|
29
|
-
validateConvexId(id);
|
|
30
|
-
const chatId = requireChatId();
|
|
31
|
-
const response = await apiPost("/api/actions/claim", {
|
|
32
|
-
actionId: id,
|
|
33
|
-
chatId,
|
|
34
|
-
});
|
|
35
|
-
const hints = [
|
|
36
|
-
"Review the action name, description, and tags above — then load any skills that would help you complete this work.",
|
|
37
|
-
];
|
|
38
|
-
writeJson({ ...response, hints });
|
|
39
|
-
}
|
|
40
|
-
catch (err) {
|
|
41
|
-
failApi(err);
|
|
42
|
-
}
|
|
43
|
-
},
|
|
44
|
-
});
|
|
45
|
-
//# sourceMappingURL=claim.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"claim.js","sourceRoot":"","sources":["../../../src/commands/actions/claim.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AACtC,OAAO,EAAE,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAC5D,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC7C,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAStD,cAAc,CAAC;IACb,OAAO,EAAE,eAAe;IACxB,WAAW,EACT,yKAAyK;IAC3K,IAAI,EAAE;QACJ,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,WAAW,EAAE,QAAQ,EAAE,IAAI,EAAE;KACjE;CACF,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,YAAY,GAAG,aAAa,CAAC;IACxC,IAAI,EAAE;QACJ,IAAI,EAAE,OAAO;QACb,WAAW,EACT,4IAA4I;KAC/I;IACD,IAAI,EAAE;QACJ,EAAE,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,WAAW,EAAE,WAAW,EAAE,QAAQ,EAAE,KAAK,EAAE;QACrE,WAAW,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,WAAW,EAAE,QAAQ,EAAE,KAAK,EAAE;KAC3E;IACD,GAAG,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE;QACtB,IAAI,CAAC;YACH,MAAM,EAAE,GAAI,IAAI,CAAC,EAAyB,IAAK,IAAI,CAAC,WAAW,CAAwB,CAAC;YACxF,IAAI,CAAC,EAAE,EAAE,CAAC;gBACR,cAAc,CAAC,wBAAwB,CAAC,CAAC;YAC3C,CAAC;YACD,gBAAgB,CAAC,EAAE,CAAC,CAAC;YACrB,MAAM,MAAM,GAAG,aAAa,EAAE,CAAC;YAC/B,MAAM,QAAQ,GAAG,MAAM,OAAO,CAA+C,oBAAoB,EAAE;gBACjG,QAAQ,EAAE,EAAE;gBACZ,MAAM;aACP,CAAC,CAAC;YAEH,MAAM,KAAK,GAAa;gBACtB,oHAAoH;aACrH,CAAC;YAEF,SAAS,CAAC,EAAE,GAAG,QAAQ,EAAE,KAAK,EAAE,CAAC,CAAC;QACpC,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,CAAC,GAAG,CAAC,CAAC;QACf,CAAC;IACH,CAAC;CACF,CAAC,CAAC"}
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
export declare const completeCommand: import("citty").CommandDef<{
|
|
2
|
-
readonly id: {
|
|
3
|
-
readonly type: "positional";
|
|
4
|
-
readonly description: "Action ID or temp ID";
|
|
5
|
-
readonly required: false;
|
|
6
|
-
};
|
|
7
|
-
readonly "action-id": {
|
|
8
|
-
readonly type: "string";
|
|
9
|
-
readonly description: "Action ID or temp ID";
|
|
10
|
-
readonly required: false;
|
|
11
|
-
};
|
|
12
|
-
readonly note: {
|
|
13
|
-
readonly type: "string";
|
|
14
|
-
readonly description: "What was done — context for the team and AI";
|
|
15
|
-
readonly required: false;
|
|
16
|
-
};
|
|
17
|
-
}>;
|
|
18
|
-
//# sourceMappingURL=complete.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"complete.d.ts","sourceRoot":"","sources":["../../../src/commands/actions/complete.ts"],"names":[],"mappings":"AAgBA,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;EA2B1B,CAAC"}
|
|
@@ -1,42 +0,0 @@
|
|
|
1
|
-
import { defineCommand } from "citty";
|
|
2
|
-
import { apiPost, validateConvexId } from "../../client.js";
|
|
3
|
-
import { requireChatId } from "../../env.js";
|
|
4
|
-
import { registerSchema } from "../../schemas.js";
|
|
5
|
-
import { failApi, failValidation, isTempId, writeOk } from "./shared.js";
|
|
6
|
-
registerSchema({
|
|
7
|
-
command: "actions.complete",
|
|
8
|
-
description: "Stage completion of an action. Accepts a real action ID (must be claimed) or a temp ID from the same draft. The action becomes completed when the chat is published.",
|
|
9
|
-
args: {
|
|
10
|
-
id: { type: "string", description: "Action ID or temp ID", required: true },
|
|
11
|
-
note: { type: "string", description: "What was done — context for the team and AI", required: false },
|
|
12
|
-
},
|
|
13
|
-
});
|
|
14
|
-
export const completeCommand = defineCommand({
|
|
15
|
-
meta: {
|
|
16
|
-
name: "complete",
|
|
17
|
-
description: "Stage completion of an action. Accepts real IDs (claimed) or temp IDs (same draft). Example: baker actions complete <id>",
|
|
18
|
-
},
|
|
19
|
-
args: {
|
|
20
|
-
id: { type: "positional", description: "Action ID or temp ID", required: false },
|
|
21
|
-
"action-id": { type: "string", description: "Action ID or temp ID", required: false },
|
|
22
|
-
note: { type: "string", description: "What was done — context for the team and AI", required: false },
|
|
23
|
-
},
|
|
24
|
-
run: async ({ args }) => {
|
|
25
|
-
try {
|
|
26
|
-
const id = args.id || args["action-id"];
|
|
27
|
-
if (!id) {
|
|
28
|
-
failValidation("Action ID is required.");
|
|
29
|
-
}
|
|
30
|
-
if (!isTempId(id)) {
|
|
31
|
-
validateConvexId(id);
|
|
32
|
-
}
|
|
33
|
-
const chatId = requireChatId();
|
|
34
|
-
await apiPost("/api/actions/complete", { chatId, actionRef: id, note: args.note });
|
|
35
|
-
writeOk();
|
|
36
|
-
}
|
|
37
|
-
catch (err) {
|
|
38
|
-
failApi(err);
|
|
39
|
-
}
|
|
40
|
-
},
|
|
41
|
-
});
|
|
42
|
-
//# sourceMappingURL=complete.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"complete.js","sourceRoot":"","sources":["../../../src/commands/actions/complete.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AACtC,OAAO,EAAE,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAC5D,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC7C,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,OAAO,EAAE,cAAc,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAEzE,cAAc,CAAC;IACb,OAAO,EAAE,kBAAkB;IAC3B,WAAW,EACT,sKAAsK;IACxK,IAAI,EAAE;QACJ,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,sBAAsB,EAAE,QAAQ,EAAE,IAAI,EAAE;QAC3E,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,6CAA6C,EAAE,QAAQ,EAAE,KAAK,EAAE;KACtG;CACF,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,eAAe,GAAG,aAAa,CAAC;IAC3C,IAAI,EAAE;QACJ,IAAI,EAAE,UAAU;QAChB,WAAW,EACT,0HAA0H;KAC7H;IACD,IAAI,EAAE;QACJ,EAAE,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,WAAW,EAAE,sBAAsB,EAAE,QAAQ,EAAE,KAAK,EAAE;QAChF,WAAW,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,sBAAsB,EAAE,QAAQ,EAAE,KAAK,EAAE;QACrF,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,6CAA6C,EAAE,QAAQ,EAAE,KAAK,EAAE;KACtG;IACD,GAAG,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE;QACtB,IAAI,CAAC;YACH,MAAM,EAAE,GAAI,IAAI,CAAC,EAAyB,IAAK,IAAI,CAAC,WAAW,CAAwB,CAAC;YACxF,IAAI,CAAC,EAAE,EAAE,CAAC;gBACR,cAAc,CAAC,wBAAwB,CAAC,CAAC;YAC3C,CAAC;YACD,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,CAAC;gBAClB,gBAAgB,CAAC,EAAE,CAAC,CAAC;YACvB,CAAC;YACD,MAAM,MAAM,GAAG,aAAa,EAAE,CAAC;YAC/B,MAAM,OAAO,CAAe,uBAAuB,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;YACjG,OAAO,EAAE,CAAC;QACZ,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,CAAC,GAAG,CAAC,CAAC;QACf,CAAC;IACH,CAAC;CACF,CAAC,CAAC"}
|
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
export declare const createCommand: import("citty").CommandDef<{
|
|
2
|
-
readonly name: {
|
|
3
|
-
readonly type: "string";
|
|
4
|
-
readonly description: "Action name";
|
|
5
|
-
readonly required: false;
|
|
6
|
-
};
|
|
7
|
-
readonly description: {
|
|
8
|
-
readonly type: "string";
|
|
9
|
-
readonly description: "Description";
|
|
10
|
-
readonly required: false;
|
|
11
|
-
readonly default: "";
|
|
12
|
-
};
|
|
13
|
-
readonly tag: {
|
|
14
|
-
readonly type: "string";
|
|
15
|
-
readonly description: "Tag slugs (comma-separated, repeatable)";
|
|
16
|
-
readonly required: false;
|
|
17
|
-
};
|
|
18
|
-
readonly "temp-id": {
|
|
19
|
-
readonly type: "string";
|
|
20
|
-
readonly description: "Optional custom tempId";
|
|
21
|
-
readonly required: false;
|
|
22
|
-
};
|
|
23
|
-
}>;
|
|
24
|
-
//# sourceMappingURL=create.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"create.d.ts","sourceRoot":"","sources":["../../../src/commands/actions/create.ts"],"names":[],"mappings":"AAuBA,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;EAgDxB,CAAC"}
|