Skip to content

docs: add examples and local development instructions to README#3

Merged
CodySearsOS merged 2 commits intomainfrom
devin/1771976751-readme-examples
Feb 24, 2026
Merged

docs: add examples and local development instructions to README#3
CodySearsOS merged 2 commits intomainfrom
devin/1771976751-readme-examples

Conversation

@CodySearsOS
Copy link
Collaborator

@CodySearsOS CodySearsOS commented Feb 24, 2026

docs: add examples and local development instructions to README

Summary

Documentation-only change to the README:

  1. Local Development section — instructions for testing the CLI locally without publishing to npm (clone → build → run with node dist/cli.js or npm link)
  2. Examples section — real-world CLI examples for all 6 command groups using tiny-dinos-eth and mfers collections, with actual contract addresses and wallet addresses
  3. Usage fix — updated offers traits synopsis to show --type and --value as required flags (matching the code fix in PR fix: use POST for nfts refresh, require type+value for offers traits #2)
  4. API key links — both the Authentication section and Requirements section now link to https://docs.opensea.io/reference/api-keys (the specific API keys page, not the docs root)

Review & Testing Checklist for Human

  • Verify the Examples section doesn't feel redundant with the CLI Usage section above it — both document the same commands (one as syntax reference, one with real arguments). Consider whether consolidation would be cleaner.
  • Spot-check that the example contract addresses and wallet addresses are correct for the collections referenced (tiny-dinos-eth contract 0xd9b78a2f1dafc8bb9c60961790d2beefebee56f4, owner 0xde7fce3a1cba4a705f299ce41d163017f165d666).
  • Confirm the API key link (https://docs.opensea.io/reference/api-keys) resolves correctly and is the preferred page to send users to.

Notes

@devin-ai-integration
Copy link
Contributor

Original prompt from cody.sears@opensea.io
SYSTEM:
=== BEGIN THREAD HISTORY ===
Unknown User (U054FL5LPT7): @Devin can you explore what it would look like for opensea to have a cli (potentially an npm package)? similar to what we have for mcp but lets agents call the opensea api with an api key
=== END THREAD HISTORY ===

Thread URL: https://opensea.slack.com/archives/D093F60M0AW/p1771969400613599?thread_ts=1771969400.613599&cid=D093F60M0AW

The latest message is the one right above that tagged you.

@devin-ai-integration
Copy link
Contributor

🤖 Devin AI Engineer

I'll be helping with this pull request! Here's what you should know:

✅ I will automatically:

  • Address comments on this PR. Add '(aside)' to your comment to have me ignore it.
  • Look at CI failures and help fix them

⚙️ Control Options:

  • Disable automatic comment and CI monitoring

@CodySearsOS CodySearsOS marked this pull request as ready for review February 24, 2026 23:49
@CodySearsOS CodySearsOS merged commit 6613da4 into main Feb 24, 2026
2 checks passed
@ryanio ryanio deleted the devin/1771976751-readme-examples branch February 25, 2026 17:25
devin-ai-integration bot added a commit that referenced this pull request Mar 4, 2026
- Remove wrapper-detection heuristic from filterFields; always apply
  pickFields at top level (issue #1 from review)
- Remove setOutputOptions/OutputOptions from SDK barrel export to avoid
  state leakage for SDK consumers (issue #2 from review)
- Add --max-lines validation requiring >= 1 (issue #3 from review)
- Update tests to match simplified filterFields behavior

Co-Authored-By: Chris K <ckorhonen@gmail.com>
ckorhonen added a commit that referenced this pull request Mar 4, 2026
* feat: add --fields and --max-lines global CLI options (DIS-145)

Add --fields <fields> to select specific JSON fields in output.
Add --max-lines <lines> to truncate output with line count indicator.

Uses Commander preAction hook and module-level output options to avoid
changing any command files. Field filtering handles plain objects,
arrays, and wrapped API responses (e.g. {nfts: [...], next: ...}).
Truncation appends '... (N more lines)' indicator.

Co-Authored-By: Chris K <ckorhonen@gmail.com>

* fix: improve filterFields heuristic and maxLines nullish check (DIS-145)

- filterFields now checks if any requested field matches a top-level key.
  If yes, picks from top level (handles Collection with array props like
  contracts, editors). If no match, treats as wrapper and filters array
  items (handles {nfts: [...], next: ...} responses).
- Changed maxLines guard from truthiness to != null so --max-lines 0 works.
- Added tests for objects with array properties and maxLines 0.

Co-Authored-By: Chris K <ckorhonen@gmail.com>

* fix: address code review feedback (DIS-145)

- Remove wrapper-detection heuristic from filterFields; always apply
  pickFields at top level (issue #1 from review)
- Remove setOutputOptions/OutputOptions from SDK barrel export to avoid
  state leakage for SDK consumers (issue #2 from review)
- Add --max-lines validation requiring >= 1 (issue #3 from review)
- Update tests to match simplified filterFields behavior

Co-Authored-By: Chris K <ckorhonen@gmail.com>

---------

Co-authored-by: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
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