Rename package to scope3 and fix changeset publishing#23
Merged
Conversation
Highlights the recommended scope3 package for shorter npx commands. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
Makes the client fail loudly when the API doesn't return structuredContent, helping catch API specification violations that need upstream fixes. Changes: - Remove fallback JSON parsing from text content - Throw descriptive error when structuredContent is missing - Include debug details (tool name, content type, preview) in error - Update tests to verify strict validation This ensures we catch and report any API endpoints that aren't following the Scope3 MCP specification correctly. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
When the MCP API returns both content.text (human message) and structuredContent
(structured data), the CLI now displays both:
1. Human-readable message in cyan
2. Blank line
3. Structured data in table/list format
In JSON mode, includes _message field with the text.
Changes:
- Client extracts text message from content and includes as _message
- CLI detects _message and displays it before structured data
- Updated tests to verify message handling
- 84 tests passing
Example output:
Found 1 agent:
1. Yahoo Staging Sales Agent
[table with structured data follows]
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
The workspace setup was causing changesets to fail because it expected @scope3/agentic-client to be in packages/* but it's in the root directory. Changes: - Removed workspaces from package.json - Updated scope3 package to depend on @scope3/agentic-client@^1.0.5 - Updated changeset to only version the main package - The scope3 wrapper will be published separately after the main package This allows changesets to properly version and publish the main package. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
Consolidate to a single package with a shorter, more memorable name. Changes: - Renamed package from @scope3/agentic-client to scope3 - Removed packages/scope3-cli/ wrapper (no longer needed) - Updated README with new package name and simpler installation - Updated changeset to reference scope3 instead of @scope3/agentic-client - All 84 tests passing Benefits: - Shorter CLI command: npx scope3 (vs npx @scope3/agentic-client) - Single package to maintain and publish - Better developer experience - Follows CLI tool naming conventions (aws, gh, docker, etc.) 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
Users can now configure separate API keys for production and staging environments, making it easier to work with both simultaneously. Changes: - Added productionApiKey and stagingApiKey to config - CLI automatically selects correct key based on --environment flag - Falls back to legacy single apiKey for backwards compatibility - Updated config commands to support new keys - Updated loadConfig to properly load all config fields Usage: scope3 config set productionApiKey <key> scope3 config set stagingApiKey <key> scope3 --environment staging brand-agent list scope3 --environment production brand-agent list Benefits: - No need to swap API keys when switching environments - Can set default environment in config - Legacy single apiKey still works for backwards compatibility Testing: - Verified staging key works and caught API bug (no structuredContent) - Verified production key works correctly 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
Made error messages clearer and less verbose when the API doesn't
return structured data as required by the specification.
Changes:
- Simplified error message to be user-friendly
- Removed redundant JSON logger output (only shows in --debug mode)
- Only show stack trace when --debug flag is used
- Updated all tests to match new error messages
Before:
{"message":"MCP API VIOLATION: Missing structuredContent",...}
{"message":"Tool execution failed",...}
Error: MCP API returned response without structuredContent...
After:
Error: API Error: Missing structured data for "brand_agent_list"
API returned text: "No brand agents found for BOK'a Cola."
The API should return structured JSON data but returned only text.
This is an API bug that needs to be fixed upstream.
With --debug flag:
Shows full JSON logs + stack trace for debugging
Benefits:
- Much easier to understand what went wrong
- Clear indication it's an API bug, not a CLI issue
- Less cluttered output in normal mode
- Debug mode still provides full details when needed
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
EmmaLouise2018
approved these changes
Nov 8, 2025
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
@scope3/agentic-clienttoscope3for better UXpackages/scope3-cli/wrapper packageWhy the rename?
Better Developer Experience:
npx scope3vsnpx @scope3/agentic-clientaws,gh,docker,npmSimpler Maintenance:
Changes
@scope3/agentic-client→scope3packages/scope3-cli/wrapper (no longer needed)scope3Testing
Migration
After this is published as
scope3@1.0.6:npm install scope3@scope3/agentic-client@1.0.4or upgrade toscope3@1.0.6@scope3/agentic-clienton npm pointing users toscope3🤖 Generated with Claude Code