opensrc

tarafından vercel

Bağımlılık kaynak kodunu getirerek AI ajanlarına daha derin uygulama bağlamı sağlar. Ajanın bir kütüphanenin dahili olarak nasıl çalıştığını anlaması gerektiğinde kullanın, okuyun…

npx skills add https://github.com/vercel-labs/opensrc --skill opensrc

Source Code Fetching with opensrc

Fetches dependency source code so agents can read implementations, not just types. Clones repositories at the correct version tag and caches them globally at ~/.opensrc/.

Core Pattern

rg "parse" $(opensrc path zod)
cat $(opensrc path zod)/src/types.ts
find $(opensrc path zod) -name "*.test.ts"

opensrc path <pkg> prints the absolute path to cached source. If not cached, it fetches automatically. Progress goes to stderr, path to stdout, so $(opensrc path ...) works in subshells.

Fetching Source Code

opensrc path zod
opensrc path pypi:requests
opensrc path crates:serde
opensrc path facebook/react

# Multiple packages at once
opensrc path zod react next
opensrc path pypi:requests pypi:flask
opensrc path crates:serde crates:tokio

# Specific versions
opensrc path zod@3.22.0
opensrc path pypi:flask@3.0.0
opensrc path owner/repo@v1.0.0
opensrc path owner/repo#main

Version Resolution

For npm packages, opensrc auto-detects the installed version from lockfiles (package-lock.json, pnpm-lock.yaml, yarn.lock). Use --cwd to resolve from a different project:

opensrc path zod --cwd /path/to/project

For PyPI and crates.io, explicit versions or latest are used. For repos, use @ref or #ref to pin a branch, tag, or commit.

Managing the Cache

Source is cached globally at ~/.opensrc/ (override with OPENSRC_HOME).

opensrc list                     # show all cached sources
opensrc list --json              # JSON output

opensrc remove zod               # remove a package
opensrc remove facebook/react    # remove a repo

opensrc clean                    # remove everything
opensrc clean --npm              # only npm packages
opensrc clean --pypi             # only PyPI packages
opensrc clean --crates           # only crates.io packages
opensrc clean --packages         # all packages, keep repos
opensrc clean --repos            # all repos, keep packages

When to Fetch Source

Fetch source when you need to:

  • Understand internal behavior that types don't reveal
  • Debug unexpected library behavior
  • Learn patterns from well-known implementations
  • Verify how a function handles edge cases

Don't fetch source for simple API usage questions that docs or types can answer.

vercel tarafından daha fazla skill

vercel
vercel
Yerel geliştirme ve test için öykünülmüş Vercel REST API'si. Kullanıcının Vercel API uç noktalarıyla yerel olarak etkileşime geçmesi, Vercel entegrasyonlarını test etmesi gerektiğinde kullanın,…
cron-jobs
vercel
Vercel Cron Jobs yapılandırması ve en iyi uygulamalar. vercel.json dosyasında zamanlanmış görevler eklerken, düzenlerken veya hata ayıklarken kullanın.
codegen
vercel
json-render için kod oluşturma yardımcıları. UI şartnamelerinden kod oluştururken, özel kod dışa aktarıcıları oluştururken, şartnameleri tararken veya özellikleri serileştirirken kullanın…
next-best-practice
vercel
Next.js en iyi uygulamaları - dosya kuralları, RSC sınırları, veri desenleri, async API'ler, meta veriler, hata yönetimi, rota işleyicileri, resim/yazı tipi optimizasyonu,…
benchmark-sandbox
vercel
Vercel Sandbox'larda vercel-plugin eval senaryolarını çalıştırır, yerel WezTerm panelleri yerine. Claude Code ve önceden yüklenmiş plugin ile geçici mikroVM'ler sağlar,…
write-guide
vercel
Gerçek dünya kullanım senaryosunu aşamalı örneklerle öğreten bir teknik rehber oluşturur. Kavramlar yalnızca okuyucunun ihtiyaç duyduğu anda tanıtılır.
benchmark-testing
vercel
Gerçekçi senaryolarda vercel-plugin beceri enjeksiyonunu test etmek için benchmark test projeleri oluşturup başlatır. İzole dizinler kurar, yükler…
ai-gateway
vercel
Vercel AI Gateway uzman rehberliği. Model yönlendirme, sağlayıcı yedekleme, maliyet takibi yapılandırırken veya birden fazla AI sağlayıcısını birleşik bir şekilde yönetirken kullanın…