René's URL Explorer Experiment


Title: Issue · GitHub

Open Graph Title: Issue · EntityProcess/allagents

X Title: Issue · EntityProcess/allagents

Description: CLI tool for managing multi-repo AI agent workspaces with plugin synchronization across multiple AI clients. - Issue · EntityProcess/allagents

Open Graph Description: CLI tool for managing multi-repo AI agent workspaces with plugin synchronization across multiple AI clients. - Issue · EntityProcess/allagents

X Description: CLI tool for managing multi-repo AI agent workspaces with plugin synchronization across multiple AI clients. - Issue · EntityProcess/allagents

Opengraph URL: https://github.com/EntityProcess/allagents

X: @github

direct link

Domain: github.com


Hey, it has json ld scripts:
{"@context":"https://schema.org","@type":"DiscussionForumPosting","headline":"feat: version pinning for skills and plugins (@version suffix and --pin flag)","articleBody":"\u003e **Priority:** high · Unlocks reproducible installs across team members and across agent sessions.\n\n## Problem\n\n\\`allagents\\` has no way to pin a skill or plugin to a specific Git ref. \\`src/utils/plugin-path.ts::parseGitHubUrl\\` recognizes \\`branch\\` (via \\`/tree/\u003cbranch\u003e\\` in a URL) but doesn't accept an \\`owner/repo@ref\\` shorthand, and \\`@\\` in install args is already taken by the marketplace shorthand (\\`my-plugin@official\\`). Consequences:\n\n- Two team members running \\`allagents update\\` on different days can get different skill bodies.\n- An agent running in CI cannot guarantee reproducible session-startup state.\n- There is no audit trail for which version of a skill a deployed agent was running.\n\nBy contrast \\`gh skill install\\` supports both inline \\`@v1.2.0\\` and \\`--pin \u003ctag-or-sha\u003e\\` (mutually exclusive). Implementation reference: \\`pkg/cmd/skills/install/install.go::parseSkillFromOpts\\` and \\`resolveVersion\\` in \\`cli/cli\\`.\n\n## Current behavior\n\n\\`\\`\\`bash\n$ allagents plugin install --help | grep -E 'pin|version|@'\n  $ allagents plugin install my-plugin@official            # @ means marketplace, NOT version\n  $ allagents plugin install my-plugin@official --scope user\n\n# No --pin flag exists. Passing a tag-style @ref does not work:\n$ allagents plugin install owner/repo@v1.2.0\n# Treats v1.2.0 as a marketplace name and fails to resolve\n\n# workspace.yaml has no pin field; sync-state records no resolved ref:\n$ cat .allagents/sync-state.json\n{\n  \\\"version\\\": 1,\n  \\\"lastSync\\\": \\\"2026-05-12T10:54:56.311Z\\\",\n  \\\"files\\\": { \\\"claude\\\": [] },\n  \\\"mcpServers\\\": { \\\"claude\\\": [] }\n}\n\\`\\`\\`\n\n## Expected behavior\n\n\\`\\`\\`bash\n# Inline pin\n$ allagents skills add foo --from owner/repo@v1.2.0\n✓ Added foo from owner/repo (pinned to v1.2.0)\n\n# Explicit flag (equivalent)\n$ allagents skills add foo --from owner/repo --pin v1.2.0\n✓ Added foo from owner/repo (pinned to v1.2.0)\n\n# Inline + --pin → conflict\n$ allagents skills add foo --from owner/repo@v1.2.0 --pin abc1234\nError: cannot combine inline @version with --pin\n\n# workspace.yaml form\nplugins:\n  - source: owner/repo\n    pin: v1.2.0                  # new optional field\n\n# sync-state.json records the resolved ref + SHA so subsequent updates can detect drift\n$ cat .allagents/sync-state.json | jq .sources\n{\n  \\\"owner/repo\\\": {\n    \\\"pluginSpec\\\": \\\"owner/repo\\\",\n    \\\"resolvedRef\\\": \\\"v1.2.0\\\",\n    \\\"resolvedSha\\\": \\\"abc1234...\\\",\n    \\\"pinnedRef\\\": \\\"v1.2.0\\\"\n  }\n}\n\\`\\`\\`\n\n## Verification gate (must pass before closing)\n\n\\`\\`\\`bash\nset -euo pipefail\n\nbun run build\nWS=\\$(mktemp -d)\ncd \\\"\\$WS\\\"\nallagents workspace init --client claude\n\n# (1) Inline @version is accepted (use any small public skills repo with a tagged release)\nallagents skills add brainstorming --from anthropics/superpowers@v0.1.0\ntest -d .agents/skills/brainstorming/\n\n# (2) --pin flag is accepted and equivalent\nrm -rf .agents\nallagents skills add brainstorming --from anthropics/superpowers --pin v0.1.0\ntest -d .agents/skills/brainstorming/\n\n# (3) Inline + --pin together is rejected\n! allagents skills add brainstorming --from anthropics/superpowers@v0.1.0 --pin v0.1.0\n\n# (4) Resolved ref is recorded in sync-state\njq -e '.sources[\\\"anthropics/superpowers\\\"].pinnedRef == \\\"v0.1.0\\\"' .allagents/sync-state.json\njq -e '.sources[\\\"anthropics/superpowers\\\"].resolvedSha | length \u003e= 7' .allagents/sync-state.json\n\n# (5) workspace.yaml round-trips a pin field\ncat \u003e .allagents/workspace.yaml \u003c\u003cYAML\nclients: [claude]\nplugins:\n  - source: anthropics/superpowers\n    pin: v0.1.0\nYAML\nallagents update\njq -e '.sources[\\\"anthropics/superpowers\\\"].pinnedRef == \\\"v0.1.0\\\"' .allagents/sync-state.json\n\ncd / \u0026\u0026 rm -rf \\\"\\$WS\\\"\n\\`\\`\\`\n\nAll five checks must pass. (Substitute the example repo/tag with a stable public alternative if needed; the integration test should use a known stable source.)\n\n## Implementation notes\n\n- \\`src/utils/plugin-path.ts::parseGitHubUrl\\`: extend to recognize \\`owner/repo@\u003cref\u003e\\` shorthand. Distinguish from \\`name@marketplace\\` by checking whether the left side looks like \\`owner/repo\\` (contains a slash) — \\`@\\` after a slash is a Git ref; \\`@\\` without a slash is a marketplace.\n- \\`src/cli/commands/plugin-skills.ts::addCmd\\`: add \\`--pin \u003cref\u003e\\` option. Validate mutual exclusivity with inline \\`@version\\` in the positional.\n- \\`src/cli/commands/plugin.ts::installCmd\\` (\\`plugin install\\`): same \\`--pin\\` flag.\n- \\`src/core/plugin.ts::fetchPlugin\\`: extend signature to accept \\`{ ref?: string }\\` and return the resolved ref + SHA. The shallow-clone path needs to clone the specific ref (or fetch + checkout).\n- \\`src/models/workspace-config.ts::PluginEntrySchema\\`: add an optional \\`pin: z.string().optional()\\` field to the object form.\n- \\`src/models/sync-state.ts::SyncStateSchema\\`: add an optional \\`sources\\` record keyed by plugin spec with \\`{ pluginSpec, resolvedRef, resolvedSha, pinnedRef? }\\`. Don't break the existing \\`files\\` field — additive only.\n- This issue partially overlaps with content-hash tracking; the \\`sources\\` block above is designed to be a strict subset of the schema proposed in the companion lockfile-hashes issue, so the two can land together cleanly.\n\n## Refs\n\n- Reference impl: \\`cli/cli\\` \\`pkg/cmd/skills/install/install.go::parseSkillFromOpts\\`, \\`resolveVersion\\`.\n- Companion wiki page: \\`concepts/allagents-vs-gh-skill.md\\` § \\\"Pinning vs declarative re-sync\\\".\n- Related issue: content-hash tracking in sync-state (filed separately).","author":{"url":"https://github.com/christso","@type":"Person","name":"christso"},"datePublished":"2026-05-12T10:56:28.000Z","interactionStatistic":{"@type":"InteractionCounter","interactionType":"https://schema.org/CommentAction","userInteractionCount":0},"url":"https://github.com/372/allagents/issues/372"}

route-pattern/:user_id/:repository/issues/:id(.:format)
route-controllerissues
route-actionshow
fetch-noncev2:23559c24-5d04-873e-816a-a97ff7dd5033
current-catalog-service-hash81bb79d38c15960b92d99bca9288a9108c7a47b18f2423d0f6438c5b7bcd2114
request-id82E6:B72C9:10EAB0D:1747804:6A4DDEA3
html-safe-noncefd2edc1a2003e0379c338d825ffbcdcb40012956f124b8586ae85a179042f8a9
visitor-payloadeyJyZWZlcnJlciI6IiIsInJlcXVlc3RfaWQiOiI4MkU2OkI3MkM5OjEwRUFCMEQ6MTc0NzgwNDo2QTREREVBMyIsInZpc2l0b3JfaWQiOiI0NDY2ODk3NTQwMTc2Nzk3MzQ3IiwicmVnaW9uX2VkZ2UiOiJpYWQiLCJyZWdpb25fcmVuZGVyIjoiaWFkIn0=
visitor-hmaceb139d0d6a1b1bccca857446182fdde9c4686ad646d031c58389ff0835753cfe
hovercard-subject-tagrepository:1139437609
github-keyboard-shortcutsrepository,issues,copilot
google-site-verificationApib7-x98H0j5cPqHWwSMm6dNU4GmODRoqxLiDzdx9I
octolytics-urlhttps://collector.github.com/github/collect
analytics-location///issues/show
fb:app_id1401488693436528
apple-itunes-appapp-id=1477376905, app-argument=https://github.com/EntityProcess/allagents/issues/372
twitter:imagehttps://opengraph.githubassets.com/d93aee447ffc8c95d776e838d2a9fef78c306b896e4ff86bc5f35b44fd4fcd43/EntityProcess/allagents
twitter:cardsummary_large_image
og:imagehttps://opengraph.githubassets.com/d93aee447ffc8c95d776e838d2a9fef78c306b896e4ff86bc5f35b44fd4fcd43/EntityProcess/allagents
og:image:altCLI tool for managing multi-repo AI agent workspaces with plugin synchronization across multiple AI clients. - Issue · EntityProcess/allagents
og:image:width1200
og:image:height600
og:site_nameGitHub
og:typeobject
hostnamegithub.com
expected-hostnamegithub.com
None06b8a6144231bf3a234f1c2e9993861e07ce98a905912b114aa386c2d7e84b33
turbo-cache-controlno-cache
go-importgithub.com/EntityProcess/allagents git https://github.com/EntityProcess/allagents.git
octolytics-dimension-user_id8837957
octolytics-dimension-user_loginEntityProcess
octolytics-dimension-repository_id1139437609
octolytics-dimension-repository_nwoEntityProcess/allagents
octolytics-dimension-repository_publictrue
octolytics-dimension-repository_is_forkfalse
octolytics-dimension-repository_network_root_id1139437609
octolytics-dimension-repository_network_root_nwoEntityProcess/allagents
turbo-body-classeslogged-out env-production page-responsive
disable-turbofalse
browser-stats-urlhttps://api.github.com/_private/browser/stats
browser-errors-urlhttps://api.github.com/_private/browser/errors
release1d344bdb7547fe6bca17a59bb2b8aac3dc9532a0
ui-targetfull
theme-color#1e2327
color-schemelight dark

Links:

Skip to contenthttps://github.com/EntityProcess/allagents/issues/372#start-of-content
https://github.com/
Sign in https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2FEntityProcess%2Fallagents%2Fissues%2F372
GitHub CopilotWrite better code with AIhttps://github.com/features/copilot
GitHub Copilot appDirect agents from issue to mergehttps://github.com/features/ai/github-app
MCP RegistryNewIntegrate external toolshttps://github.com/mcp
ActionsAutomate any workflowhttps://github.com/features/actions
CodespacesInstant dev environmentshttps://github.com/features/codespaces
IssuesPlan and track workhttps://github.com/features/issues
Code ReviewManage code changeshttps://github.com/features/code-review
GitHub Advanced SecurityFind and fix vulnerabilitieshttps://github.com/security/advanced-security
Code securitySecure your code as you buildhttps://github.com/security/advanced-security/code-security
Secret protectionStop leaks before they starthttps://github.com/security/advanced-security/secret-protection
Why GitHubhttps://github.com/why-github
Documentationhttps://docs.github.com
Bloghttps://github.blog
Changeloghttps://github.blog/changelog
Marketplacehttps://github.com/marketplace
View all featureshttps://github.com/features
Enterpriseshttps://github.com/enterprise
Small and medium teamshttps://github.com/team
Startupshttps://github.com/enterprise/startups
Nonprofitshttps://github.com/solutions/industry/nonprofits
App Modernizationhttps://github.com/solutions/use-case/app-modernization
DevSecOpshttps://github.com/solutions/use-case/devsecops
DevOpshttps://github.com/solutions/use-case/devops
CI/CDhttps://github.com/solutions/use-case/ci-cd
View all use caseshttps://github.com/solutions/use-case
Healthcarehttps://github.com/solutions/industry/healthcare
Financial serviceshttps://github.com/solutions/industry/financial-services
Manufacturinghttps://github.com/solutions/industry/manufacturing
Governmenthttps://github.com/solutions/industry/government
View all industrieshttps://github.com/solutions/industry
View all solutionshttps://github.com/solutions
AIhttps://github.com/resources/articles?topic=ai
Software Developmenthttps://github.com/resources/articles?topic=software-development
DevOpshttps://github.com/resources/articles?topic=devops
Securityhttps://github.com/resources/articles?topic=security
View all topicshttps://github.com/resources/articles
Customer storieshttps://github.com/customer-stories
Events & webinarshttps://github.com/resources/events
Ebooks & reportshttps://github.com/resources/whitepapers
Business insightshttps://github.com/solutions/executive-insights
GitHub Skillshttps://skills.github.com
Documentationhttps://docs.github.com
Customer supporthttps://support.github.com
Community forumhttps://github.com/orgs/community/discussions
Trust centerhttps://github.com/trust-center
Partnershttps://github.com/partners
View all resourceshttps://github.com/resources
GitHub SponsorsFund open source developershttps://github.com/sponsors
Security Labhttps://securitylab.github.com
Maintainer Communityhttps://maintainers.github.com
Acceleratorhttps://github.com/accelerator
GitHub Starshttps://stars.github.com
Archive Programhttps://archiveprogram.github.com
Topicshttps://github.com/topics
Trendinghttps://github.com/trending
Collectionshttps://github.com/collections
Enterprise platformAI-powered developer platformhttps://github.com/enterprise
GitHub Advanced SecurityEnterprise-grade security featureshttps://github.com/security/advanced-security
Copilot for BusinessEnterprise-grade AI featureshttps://github.com/features/copilot/copilot-business
Premium SupportEnterprise-grade 24/7 supporthttps://github.com/premium-support
Pricinghttps://github.com/pricing
Search syntax tipshttps://docs.github.com/search-github/github-code-search/understanding-github-code-search-syntax
documentationhttps://docs.github.com/search-github/github-code-search/understanding-github-code-search-syntax
Sign in https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2FEntityProcess%2Fallagents%2Fissues%2F372
Sign up https://github.com/signup?ref_cta=Sign+up&ref_loc=header+logged+out&ref_page=%2F%3Cuser-name%3E%2F%3Crepo-name%3E%2Fissues%2Fshow&source=header-repo&source_repo=EntityProcess%2Fallagents
Reloadhttps://github.com/EntityProcess/allagents/issues/372
Reloadhttps://github.com/EntityProcess/allagents/issues/372
Reloadhttps://github.com/EntityProcess/allagents/issues/372
Please reload this pagehttps://github.com/EntityProcess/allagents/issues/372
EntityProcess https://github.com/EntityProcess
allagentshttps://github.com/EntityProcess/allagents
Notifications https://github.com/login?return_to=%2FEntityProcess%2Fallagents
Fork 2 https://github.com/login?return_to=%2FEntityProcess%2Fallagents
Star 9 https://github.com/login?return_to=%2FEntityProcess%2Fallagents
Code https://github.com/EntityProcess/allagents
Issues 10 https://github.com/EntityProcess/allagents/issues
Pull requests 2 https://github.com/EntityProcess/allagents/pulls
Actions https://github.com/EntityProcess/allagents/actions
Projects https://github.com/EntityProcess/allagents/projects
Security and quality 0 https://github.com/EntityProcess/allagents/security
Insights https://github.com/EntityProcess/allagents/pulse
Code https://github.com/EntityProcess/allagents
Issues https://github.com/EntityProcess/allagents/issues
Pull requests https://github.com/EntityProcess/allagents/pulls
Actions https://github.com/EntityProcess/allagents/actions
Projects https://github.com/EntityProcess/allagents/projects
Security and quality https://github.com/EntityProcess/allagents/security
Insights https://github.com/EntityProcess/allagents/pulse
#381https://github.com/EntityProcess/allagents/pull/381
feat: version pinning for skills and plugins (@version suffix and --pin flag)https://github.com/EntityProcess/allagents/issues/372#top
#381https://github.com/EntityProcess/allagents/pull/381
enhancementNew feature or requesthttps://github.com/EntityProcess/allagents/issues?q=state%3Aopen%20label%3A%22enhancement%22
https://github.com/christso
christsohttps://github.com/christso
on May 12, 2026https://github.com/EntityProcess/allagents/issues/372#issue-4428480279
@refhttps://github.com/ref
@Versionhttps://github.com/Version
@Versionhttps://github.com/Version
enhancementNew feature or requesthttps://github.com/EntityProcess/allagents/issues?q=state%3Aopen%20label%3A%22enhancement%22
AllAgents OSS Boardhttps://github.com/orgs/EntityProcess/projects/2
https://github.com
Termshttps://docs.github.com/site-policy/github-terms/github-terms-of-service
Privacyhttps://docs.github.com/site-policy/privacy-policies/github-privacy-statement
Securityhttps://github.com/security
Statushttps://www.githubstatus.com/
Communityhttps://github.community/
Docshttps://docs.github.com/
Contacthttps://support.github.com?tags=dotcom-footer

Viewport: width=device-width


URLs of crawlers that visited me.