Commit Graph

374 Commits

Author SHA1 Message Date
Lyu c5f4957cbb docs: address review nits on feedback routing
- Move --language under Optional flags with an explicit bold note that
  it is required when --component sdk (it was listed under Required,
  contradicting its own conditional qualifier).
- Write '--component skills' in full in the debug skill so the flag
  binding is unambiguous.
- Generalize the insforge skill's example to show the type/component
  enums instead of a fixed 'bug/sdk' classification agents would copy
  verbatim for every situation.
- Narrow the redaction claim to the actual pattern coverage (public
  IPv4, home-directory usernames — not all IPs/usernames) in both
  skills that state it.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-23 15:22:02 -07:00
Lyu 8c3166d976 docs: route agents to the new insforge feedback command
Companion to InsForge/CLI#206, which adds `insforge feedback` for
reporting InsForge-side hurdles (bug | feature-request | friction,
classified by toolkit component). Three skills now route agents to it:

- insforge-cli: core-rule reflex ("hit an InsForge-side hurdle → file
  feedback → continue with a workaround"), routing-table row, and a
  Feedback section with the situation→type mapping and full flag
  reference.
- insforge (app/SDK): Important Notes bullet — SDK/backend/docs
  misbehaving during app work → file with --component sdk --language,
  never for the user's own app code.
- insforge-debug: "When the Root Cause Is InsForge Itself" section —
  file while diagnostic evidence (failing command, log output,
  workaround) is in hand; never block the user's task on the report.

Merge order: publish the CLI release first, then merge this — skills
install from this repo's default branch at runtime, so merging first
would document a command agents don't have yet.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-23 13:58:22 -07:00
Tony Chang d7521d2af5 Merge pull request #118 from InsForge/docs/login-no-browser
docs(cli): device login (--device) for sandboxed agents
2026-07-16 22:55:28 +08:00
yaowenc2 34906f97de docs(cli): connection setup comes before app code
Live ChatGPT session scaffolded an app with placeholder credentials
instead of logging in and creating a project first. Make the order
explicit: login -> create/link -> build with real values.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01GcszudKMZBSm5RMP14h7fu
2026-07-16 22:44:59 +08:00
yaowenc2 b170f9e24e docs(cli): two-step device login for agent harnesses; bump plugin to 1.3.0
Live ChatGPT-app testing revealed two gaps:
- Harnesses that only return output on process exit (and kill at ~45s)
  never show a single blocking `login --device` run's link. Teach the
  two-step pattern: timeout-bounded first run to capture the link,
  relay, rerun to resume the same pending code and complete.
- Workspaces with a network-domain allowlist need api.insforge.dev
  added; teach agents to relay that instruction.

Also addresses review comments: --json on the SKILL.md inline command,
'hangs forever' -> waits until callback timeout, language tag on the
output fence.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01GcszudKMZBSm5RMP14h7fu
2026-07-16 22:43:50 +08:00
yaowenc2 dd9a058da9 docs(cli): teach agents device login (--device) for sandboxes
Replaces the paste-back (--no-browser/--callback-url) guidance per
Tony's call — device flow only: agent runs `login --device`, relays
the pre-filled link + code, user clicks Authorize, CLI polls to
completion; rerun resumes the same pending code after sandbox timeouts.

Retrieval-tested: an agent given only this doc chose the right command,
relayed the link, handled the killed-process resume, and knew no
paste-back is needed.

Companion to InsForge/CLI#199 + insforge-cloud-backend#733; requires
the CLI release that ships --device.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01GcszudKMZBSm5RMP14h7fu
2026-07-16 21:31:44 +08:00
yaowenc2 9339fb66d1 docs(cli): document two-step sandbox login (--no-browser / --callback-url)
Companion to InsForge/CLI#198. In sandboxes like the ChatGPT app the
browser cannot reach the CLI's loopback callback, so browser login hangs;
the new two-step flow prints the auth URL, the user pastes back the
redirect URL, and the CLI redeems it.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01GcszudKMZBSm5RMP14h7fu
2026-07-16 16:44:49 +08:00
Tony Chang 3847fe7d29 Merge pull request #117 from InsForge/codex/skill-interface-openai-yaml
fix(skills): move interface settings to agents/openai.yaml for plugin submission
2026-07-16 09:26:32 +08:00
yaowenc2 8c72c09c49 fix(skills): use $skill-name syntax in default_prompt per skill-creator spec
Codex's bundled skill-creator spec (references/openai_yaml.md) requires
default_prompt to reference the skill explicitly as $skill-name. Also
document the interface field set and constraints in CONTRIBUTING.md.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01QT8v1kqCZYreDZwy6wfzJH
2026-07-16 09:21:45 +08:00
yaowenc2 a09d16dffb fix(skills): keep short_description within 25-64 char spec limit, add default_prompt
Addresses John-bot re-review on #117: interface.short_description is
constrained to 25-64 chars by the Codex skill-interface spec; all four
were 94-134 chars. Also adds the recommended per-skill default_prompt,
mirroring defaultPrompt in .codex-plugin/plugin.json.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01QT8v1kqCZYreDZwy6wfzJH
2026-07-16 09:10:34 +08:00
yaowenc2 e3b67e3b1e docs: drop metadata frontmatter example, point interface settings at agents/openai.yaml
Addresses John-bot review suggestion on #117: CONTRIBUTING.md and
AGENTS.md still showed the metadata block the submission portal rejects.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01QT8v1kqCZYreDZwy6wfzJH
2026-07-16 09:01:23 +08:00
yaowenc2 871d2e2a90 fix(skills): move interface settings to agents/openai.yaml for plugin submission
OpenAI's plugin submission portal rejects SKILL.md files with a metadata
frontmatter block ('metadata does not configure the skill interface').
Drop the informational metadata blocks and add per-skill
agents/openai.yaml with the supported interface fields.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01QT8v1kqCZYreDZwy6wfzJH
2026-07-16 08:47:18 +08:00
Lyu b59f809199 Merge pull request #116 from InsForge/codex/auth-refresh-event-docs
docs(auth): document token refresh event semantics
2026-07-14 10:58:49 -07:00
Lyu 9a781c7210 docs(auth): fix user-switch token window and clerk version note
Address PR review feedback on the token-refresh examples:

- Clerk and Better Auth hooks now drop the previous user's token and set
  isReady=false when the signed-in user changes (A -> B) before the async
  token fetch, so no request goes out authenticated as the old user while
  the new token is in flight.
- clerk.md: add an SDK version note (two-arg setAccessToken / AuthChangeEvent
  require >= 1.4.4; 1.3.x drops the second arg; < 1.3.0 uses the legacy
  fallback), matching better-auth.md.
- clerk.md: align the summary bullet with the two-arg setAccessToken form.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-14 10:50:11 -07:00
Lyu e291e91c6e docs(auth): document token refresh event semantics 2026-07-10 23:56:21 -07:00
Lyu 22577993f3 Merge pull request #114 from InsForge/docs/cli-login-user-api-key
docs(cli): document user-API-key login (headless/agent/CI)
2026-07-06 16:37:26 -07:00
Lyu fd2ad2428f docs(cli): match existing terse credential style, drop verbose warning
Per review: remove the standalone ⚠️ warning block; the $INSFORGE_USER_API_KEY
var form already mirrors the existing $EMAIL/$PASSWORD CI convention, which
carries no per-command security note. Keeps the login doc consistent in tone.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-06 16:31:49 -07:00
Lyu a2431aa5ac docs(cli): pass user API key via secret-store env var, not inline
Review (jwfing + greptile): the recommended headless/agent/CI invocation
put the raw uak_ inline, which leaks a full-access credential into shell
history, ps/proc, and CI logs. Show it sourced from a secret-store shell
variable ("$INSFORGE_USER_API_KEY") instead, with an explicit caution.

Note: this is a user-set shell variable, not a CLI-read env var — the CLI's
login reads only the --user-api-key flag (verified), so we don't claim
native env support.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-06 16:21:54 -07:00
Lyu 15ebc67b80 docs(cli): document user-API-key login for headless/agent/CI auth
The CLI now supports `login --user-api-key uak_...` — direct bearer auth with
no browser and no token exchange (the recommended non-interactive path for
agents/CI). Update the login reference (options, methods, credential storage,
examples) and the Connection Setup guidance to cover it.

Also correct the credential-storage note: a user-API-key session stores
`user_api_key`, not `access_token`/`refresh_token`, and isn't refreshed.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-06 16:16:23 -07:00
Lyu 26b6f8cb9c Merge pull request #112 from InsForge/docs/sdk-custom-schema-selection
docs(sdk): teach custom schema selection in the database skill
2026-06-28 10:00:46 -07:00
Lyu 60c2d7b4ec docs(sdk): refine schema section per PR #112 review
- Examples now destructure { data, error } and use concrete columns (not
  select('*')), matching the file's own Important Notes conventions.
- Add a write-path (.insert) example; use env-var placeholders like Setup.
- State public is the default explicitly; note custom schemas are auto-exposed
  on v2.2.3+ backends but require explicit GRANTs (exposure != access).
- Add that InsForge-internal schemas (auth/storage/system/payments/...) are
  never exposed and must not be targeted; accurate PGRST106 message.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-27 17:12:30 -07:00
Carmen Dou 87f0cc92b8 Merge pull request #111 from InsForge/feat/apify-datasource-skill
refactor: rename Apify data source to web scraper
2026-06-27 16:49:14 -07:00
Lyu 64937bfec1 docs(sdk): teach custom schema selection in the database skill
Adds a "Selecting a Schema" section covering client.database.schema('x'),
the createClient db:{schema} default, and the access model (schema is
routable but grants + RLS still gate access; old backends return PGRST106).
Pairs with the SDK .schema() support and v2.2.3 backend custom-schema exposure.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-27 14:59:11 -07:00
CarmenDou efde259f87 refactor: rename Apify data source to web scraper (skill dir, routing, command, API path) 2026-06-26 20:59:17 -07:00
Tony Chang 163b745102 Add agent memory usage guidance to insforge-cli skill (#97)
Teach agents the memory workflow: run `memory list` at the start of
non-trivial tasks (Core Rules reflex), recall relevant titles before
designing or debugging, and record decisions/gotchas with
`memory remember` at the moment they happen.

- Core Rules bullet making recall a start-of-task reflex
- Command Routing row + terse `## Memory` section
- New references/memory.md: commands, workflow, kinds taxonomy,
  store/don't-store guidance, idempotency/scope/empty-recall notes
- Frontmatter description mentions agent memory; version 1.6.0 -> 1.7.0

Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
2026-06-26 15:18:07 -07:00
Carmen Dou 9b0382f827 Merge pull request #110 from InsForge/feat/apify-datasource-skill
feat: add Apify data source playbook and routing to insforge-cli skill
2026-06-25 21:50:32 -07:00
CarmenDou eaea47e22d fix: address PR #110 review (CLI install wording, edge-fn vs compute env injection, admin-key naming) 2026-06-25 20:45:44 -07:00
CarmenDou 9dc5f88b05 feat: add Apify data source playbook and routing to insforge-cli skill 2026-06-25 20:22:02 -07:00
Lyu c40802259e Merge pull request #109 from InsForge/codex/plugin-marketplace-readiness
[codex] Add Codex plugin marketplace metadata
2026-06-25 13:44:36 -07:00
Lyu cc41474b81 Fix Codex plugin metadata review findings 2026-06-25 13:30:13 -07:00
Lyu 2e7c9c93b8 Add Codex plugin marketplace metadata 2026-06-25 12:42:11 -07:00
Lyu 683a08834a Merge pull request #108 from InsForge/claude/modest-torvalds-472429
feat(plugin): make repo installable + prep for community directory submission
2026-06-25 12:11:13 -07:00
Lyu 11e671eeec fix(plugin): address PR review — drop duplicated marketplace metadata, fix x402 wording
Resolves valid findings from the PR reviewers (jwfing, Cubic, CodeRabbit):

- marketplace.json: remove `version` from the plugin entry. Per the
  official docs, setting `version` in both plugin.json and the marketplace
  entry is an anti-pattern — plugin.json always wins silently, so a stale
  marketplace version can mask the real one. plugin.json is now the single
  source of truth.
- marketplace.json: drop duplicated author/homepage/license/keywords. With
  `source: "./"` and strict mode (default), plugin.json is the authority for
  plugin definition; duplicating these fields only adds drift risk. Trimmed
  to name + source + catalog description.
- marketplace.json: remove top-level `metadata.version` — it's the catalog
  version namespace, optional; omitting lets each git commit count as a new
  marketplace version (simpler for a frequently-updated skills repo).
- README: the integrations intro implied every entry is a JWT/auth flow;
  clarify that OKX x402 is a payment facilitator, not an auth provider.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-25 12:04:28 -07:00
Lyu 87e34754a7 chore(plugin): point homepage at docs.insforge.dev
The docs site is the most useful "learn more" target for someone
evaluating the plugin in the directory, vs the marketing homepage.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-25 11:53:17 -07:00
Lyu 908a6c05c6 fix: align license to Apache-2.0 and sync README with actual layout
Prep for submission to the Claude community plugin directory:

- License: LICENSE is Apache 2.0 but all manifests declared MIT. Align
  every declaration to Apache-2.0 (plugin.json, marketplace.json, the
  four SKILL.md frontmatters, README, CONTRIBUTING, AGENTS).
- README integrations summary: add Better Auth and OKX x402 (both shipped
  but previously undocumented).
- README structure tree: rewrite insforge-cli / insforge-debug /
  insforge-integrations subtrees to match the real flat references/*.md
  layout instead of the stale per-provider SKILL.md dirs.
- marketplace.json metadata version 1.0.0 -> 1.2.0 to match the plugin.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-25 11:44:44 -07:00
Lyu bcac075161 feat(plugin): add marketplace.json to make repo installable
Adds .claude-plugin/marketplace.json so the repo can be added as a
Claude Code plugin marketplace via `/plugin marketplace add
InsForge/insforge-skills` and installed with `/plugin install insforge`.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-25 11:33:37 -07:00
Lyu d202e16eb7 Merge pull request #107 from InsForge/feat/cli-billing-checkout-project-transfer
docs(insforge-cli): billing checkout/management + project transfer
2026-06-24 12:55:24 -07:00
Lyu 1cf014f1a3 docs(insforge-cli): clarify billing --json output and manage headless usage
- Correct the `--json` description for `billing upgrade`/`manage`: it prints a
  JSON object ({ checkoutUrl, sessionId } / { portalUrl }) and suppresses the
  browser open — not a bare URL string.
- Add the headless/CI `--json` note to `billing manage` (it was only on upgrade).
- List the full plan enum (free | starter | pro | team | enterprise) to match
  the CLI help.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-24 12:31:16 -07:00
Lyu 3c95c2e4fd docs(insforge-cli): document billing checkout/management + project transfer
Adds usage docs for the commands shipped in InsForge/CLI#176:
- billing: history, cycles, upgrade <plan> (Stripe checkout, opens browser),
  manage (Stripe customer portal). Reframes the section from "read-only" since
  the CLI now performs checkout, and drops the "go to the dashboard" note.
- projects transfer <targetOrgId> (requires explicit --project; guarded).
- Routing-table rows updated; skill version 1.7.0 -> 1.8.0.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-24 11:42:53 -07:00
Lyu 6af53f4519 Merge pull request #106 from InsForge/feat/cli-project-billing-org-backup-commands
docs(insforge-cli): document project, billing, org, backup & key commands
2026-06-24 09:55:39 -07:00
Lyu b0b467877d docs(insforge-cli): address PR review on the new command docs
- Routing table: drop the non-existent "pause" from the project-lifecycle row
  (only `restore` ships), and list all six backups operations instead of three.
- projects delete: stop advising `-y`; emphasize it's a guarded, human-in-the-
  loop op and the target id must be confirmed.
- backups create: clarify `--name` is optional (1–64 chars when provided).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-23 18:10:23 -07:00
Lyu 16e2c89069 docs(insforge-cli): document project, billing, org, backup & key commands
Adds usage instructions for the new CLI commands shipped in InsForge/CLI#175:
projects lifecycle (get/update/restore/update-version/upgrade-instance/delete),
billing status/credits, org usage, orgs + members management, project backups,
secrets rotate, and storage s3-keys.

- New routing-table rows and dedicated sections (Organizations and Members,
  Billing and Usage, Backups).
- Notes the org-resolution order, the latest-only semantics of update-version,
  the xl instance ceiling, and the show-once nature of rotated keys / S3 secrets.
- Bumps skill version 1.6.0 -> 1.7.0.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-23 14:14:37 -07:00
Lyu c8e4443742 Merge pull request #104 from InsForge/codex/rls-insert-select-guidance
docs: clarify RLS insert-select behavior
2026-06-17 18:13:24 -07:00
Lyu 79c062689d docs: clarify RLS insert-select behavior 2026-06-17 18:09:34 -07:00
Carmen Dou 8856392c34 Merge pull request #95 from InsForge/feat/posthog-setup-warning
chore: emphasize manual posthog wizard step
2026-06-16 14:34:11 -07:00
Lyu 5468468c39 Merge pull request #101 from InsForge/codex/cli-domains-skill
docs: add domain CLI skill guidance
2026-06-16 12:37:28 -07:00
Lyu 8adfeef43f docs: reorganize deployment domain skill references 2026-06-16 12:34:05 -07:00
Lyu ac6fc9183e docs: simplify Cloudflare account scope guidance 2026-06-16 11:22:07 -07:00
Lyu 36a5e3a938 docs: document Cloudflare account discovery scope 2026-06-16 11:18:46 -07:00
Lyu a8b46c2941 docs: add domain CLI skill guidance 2026-06-16 11:06:27 -07:00