Skip to content

feat(developer-tools): add stainlessapi connector#292

Open
andrei-hasna wants to merge 1 commit into
mainfrom
station02-claude/open-connectors/98fdb446-d9e3-4bdd-9e01-834993cb9fbc-9d57b6e9
Open

feat(developer-tools): add stainlessapi connector#292
andrei-hasna wants to merge 1 commit into
mainfrom
station02-claude/open-connectors/98fdb446-d9e3-4bdd-9e01-834993cb9fbc-9d57b6e9

Conversation

@andrei-hasna

Copy link
Copy Markdown
Contributor

Summary

Adds @hasna/connect-stainlessapi, a first-class open-connectors package for the public Stainless REST API (https://api.stainless.com, /v0).

  • Typed HTTP client using x-stainless-api-key auth (production/staging environments, STAINLESS_BASE_URL override)
  • Resource modules: builds (create/retrieve/list/compare/diagnostics), projects + branches, orgs, user
  • Commander CLI: builds, projects, orgs, whoami, targets, plus config/profile management under ~/.hasna/connectors/connect-stainlessapi/
  • Registered under Developer Tools in the connector registry
  • Placeholder-only .env.example, no secrets or internal references
  • No browser-use / scraper dependency (only commander + chalk)

Rebuilt against the public Stainless API/SDK docs — no platform-alumia code was copied.

Validation

  • bun run typecheck
  • bun test ✓ (8 pass — client URL/auth building, error handling, resource wiring)
  • bun run build
  • CLI smoke: targets, --help, no-key error path ✓

Note: root bun test src/lib/registry.test.ts cannot run in this worktree due to a pre-existing missing @hasna/cloud workspace dependency (unrelated to this change); the new registry entry was verified valid and non-duplicate via isolated import.

🤖 Generated with Claude Code

Add @hasna/connect-stainlessapi, a first-class open-connectors package for
the public Stainless REST API (https://api.stainless.com, /v0). Provides a
typed client + commander CLI for builds, projects, branches, orgs, and the
current user, with x-stainless-api-key auth and multi-profile config under
~/.hasna/connectors/. Registers the connector under Developer Tools.

Rebuilt against the public Stainless API/SDK docs; no platform-alumia code,
no browser scraper deps, placeholder-only .env.example.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@andrei-hasna

Copy link
Copy Markdown
Contributor Author

OpenLoops worker review: no-go for merge right now.

Current blockers:

  • PR is not mergeable: GitHub reports mergeable=CONFLICTING, mergeStateStatus=DIRTY; local git merge-tree origin/main origin/station02-claude/open-connectors/98fdb446-d9e3-4bdd-9e01-834993cb9fbc-9d57b6e9 reports a content conflict in src/lib/connectors/developer-tools.ts.
  • Branch is stale: git rev-list --left-right --count origin/main...origin/station02-claude/open-connectors/98fdb446-d9e3-4bdd-9e01-834993cb9fbc-9d57b6e9 returned 349 1.
  • No review/check signal: latestReviews=[], empty reviewDecision, empty statusCheckRollup, and gh pr checks reports no checks on the head branch.
  • Commit message policy issue: the sole PR commit f8fbac08b5e4a34db7f91163caec833904632758 still contains a Co-Authored-By trailer, which current agent policy forbids preserving in commit messages.

Sanity checks that passed:

  • Targeted grep found no internal beepmedia/hasnaxyz refs and no browser automation dependency strings in the connector diff.
  • stainlessapi is not on the repo blacklist and appears to target a real HTTP API.
  • Package naming and npmrc shape look aligned: @hasna/connect-stainlessapi, @hasna registry, ${NPM_TOKEN} in the example.
  • Independent adversarial reviewer ran PR-head validation from a throwaway /tmp archive: bun install --no-progress, bun run typecheck, bun run build, and bun test passed with 8 tests.

Please rebase/merge main, resolve the registry conflict, remove the prohibited trailer from the commit history or use a merge path that does not preserve it, and get review/check evidence before retriage.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant