{"id":39663946,"url":"https://github.com/tilework-tech/nori-skillsets","last_synced_at":"2026-02-20T07:03:00.285Z","repository":{"id":321669969,"uuid":"1086705555","full_name":"tilework-tech/nori-skillsets","owner":"tilework-tech","description":"System for managing collections of agent skills. Switch between skillsets seamlessly!","archived":false,"fork":false,"pushed_at":"2026-01-14T19:15:15.000Z","size":3365,"stargazers_count":80,"open_issues_count":2,"forks_count":3,"subscribers_count":1,"default_branch":"main","last_synced_at":"2026-01-14T21:32:08.343Z","etag":null,"topics":["agentic-ai","ai","claude","coding-agent"],"latest_commit_sha":null,"homepage":"https://www.npmjs.com/package/nori-ai","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/tilework-tech.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-10-30T19:33:58.000Z","updated_at":"2026-01-14T19:15:19.000Z","dependencies_parsed_at":"2026-01-05T18:05:47.620Z","dependency_job_id":null,"html_url":"https://github.com/tilework-tech/nori-skillsets","commit_stats":null,"previous_names":["tilework-tech/nori-plugin","tilework-tech/nori-profiles","tilework-tech/nori-skillsets"],"tags_count":2,"template":false,"template_full_name":null,"purl":"pkg:github/tilework-tech/nori-skillsets","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tilework-tech%2Fnori-skillsets","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tilework-tech%2Fnori-skillsets/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tilework-tech%2Fnori-skillsets/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tilework-tech%2Fnori-skillsets/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/tilework-tech","download_url":"https://codeload.github.com/tilework-tech/nori-skillsets/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tilework-tech%2Fnori-skillsets/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28534159,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-18T00:39:45.795Z","status":"online","status_checked_at":"2026-01-18T02:00:07.578Z","response_time":98,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["agentic-ai","ai","claude","coding-agent"],"created_at":"2026-01-18T09:26:41.906Z","updated_at":"2026-02-14T22:11:08.474Z","avatar_url":"https://github.com/tilework-tech.png","language":"TypeScript","funding_links":[],"categories":["ai"],"sub_categories":[],"readme":"# Nori Skillsets Client\n\n[![CI](https://github.com/tilework-tech/nori-skillsets/actions/workflows/ci.yml/badge.svg)](https://github.com/tilework-tech/nori-skillsets/actions/workflows/ci.yml)\n[![npm version](https://img.shields.io/npm/v/nori-skillsets)](https://www.npmjs.com/package/nori-skillsets)\n[![npm license](https://img.shields.io/npm/l/nori-skillsets)](https://www.npmjs.com/package/nori-skillsets)\n[![npm downloads](https://img.shields.io/npm/dm/nori-skillsets)](https://www.npmjs.com/package/nori-skillsets)\n\n**CLI Client for installing and managing Nori Skillsets**\n\nThe Nori Skillsets Client connects you to [noriskillsets.dev](https://noriskillsets.dev/), a registry of verified Claude Code Skills and packaged agent configurations. Install complete Skillsets or individual Skills that have been reviewed for effectiveness, clarity, and proper implementation.\n\nFor complete documentation and to browse available Skillsets, visit:\n- **Skillsets Registry**: [noriskillsets.dev](https://noriskillsets.dev/)\n- **Documentation**: [usenori.ai/docs/skillsets.html](https://usenori.ai/docs/skillsets.html)\n\n## What is a Skillset?\n\nA Skillset is a complete, unified configuration that defines how your coding agent behaves. Skillsets can include:\n\n- **Skills**: Step-by-step instructions that encode specific agent behaviors (TDD, debugging, code review, git workflows)\n- **CLAUDE.md**: Custom instructions and workflow preferences that guide the agent\n- **Subagents**: Specialized agents for specific tasks (codebase search, documentation, research)\n- **Slash Commands**: Quick actions that invoke Skills and workflows\n\n## Installation\n\nInstall the client:\n\n```bash\nnpm install -g nori-skillsets\n```\n\nRun init to set up a skillsets folder at cwd/.nori/profiles and capture your existing configs.\nNote that this will set up in the folder that you run the command in, allowing you to scope skillsets by project.\n\n```bash\nnori-skillsets init\n```\n\nDownload a skillset from noriskillsets.dev.\n\n```bash\nnori-skillsets download senior-swe\n```\n\nSwitch to using the new skillset.\n\n```bash\nnori-skillsets switch senior-swe\n```\n\n## How Skillsets Work\n\nSkillsets are stored in `~/.nori/profiles/` as your library of available configurations. When you switch to a Skillset, the client copies its contents into the relevant locations in `cwd/.claude/` where Claude Code reads them.\n\n**Skillset Structure:**\n```\n~/.nori/profiles/my-skillset/\n├── CLAUDE.md              # Custom instructions\n├── skills/                # Skill definitions\n│   ├── my-skill/\n│   │   └── SKILL.md\n│   └── another-skill/\n│       └── SKILL.md\n├── subagents/             # Subagent configurations\n└── slashcommands/         # Custom slash commands\n```\n\nWhen you activate a Skillset:\n1. The client cleans any existing configuration in `cwd/.claude/`\n2. Copies the selected Skillset from `cwd/.nori/profiles/\u003cskillset-name\u003e/` to `cwd/.claude/`\n3. Claude Code reads the new configuration in your next session\n\nThis separation lets you maintain multiple Skillsets and switch between them without losing any configuration.\n\n## Requirements\n\n- Node.js 22 or higher\n- Claude Code CLI installed\n- Mac or Linux operating system\n\n## Creating custom skillsets or making changes to skillsets\n\n1. Create the skillset directory:\n   ```bash\n   mkdir -p ~/.nori/profiles/my-skillset\n   ```\n\n2. Add a `CLAUDE.md` file with your custom instructions:\n   ```markdown\n   # My Custom Skillset\n\n   Add your workflow preferences here:\n   - Testing requirements\n   - Git automation rules\n   - Code style guidelines\n   - Any repeating instructions\n   ```\n\n3. Activate your skillset:\n   ```bash\n   nori-skillsets switch my-skillset\n   ```\n\nManual changes made to a `.claude/` directory will be removed when switching skillsets. Manual changes should be made in the .nori/profile/ directory instead.\n\n## Private Skillsets for Teams\n\nTeams can set up private registries to share custom Skillsets across the organization. With private registries:\n\n- Full access control - only your organization can view and install\n- Package working configurations and publish internally\n- Teammates install the exact setup that proved successful\n- Optional Skills Review service: professional evaluation before publication\n\nContact us at [usenori.ai](https://usenori.ai/#contact) to set up a private registry for your team.\n\n## Resources\n\n- **Skillsets Registry**: [noriskillsets.dev](https://noriskillsets.dev/)\n- **Documentation**: [usenori.ai/docs/skillsets.html](https://usenori.ai/docs/skillsets.html)\n- **GitHub**: [github.com/tilework-tech/nori-skillsets](https://github.com/tilework-tech/nori-skillsets)\n- **npm**: [npmjs.com/package/nori-skillsets](https://www.npmjs.com/package/nori-skillsets)\n- **Contact**: [usenori.ai](https://usenori.ai/#contact)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftilework-tech%2Fnori-skillsets","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftilework-tech%2Fnori-skillsets","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftilework-tech%2Fnori-skillsets/lists"}