Skip to content
Back to skills

Update Tool Plugin

ASecurity

Update an existing LNAI tool plugin

  • 57 stars
  • 0 votes
  • 0 copies
  • 1 view
  • Added October 17, 2026
ai-agentstypescriptbashtestinggitdocumentation

Works with

  • claude code
  • cursor
  • cli
  • mcp

Security analysis

A100/100

Scanned October 17, 2026

npx -y skills add diegosouzapw/awesome-omni-skill --skill update-tool-plugin --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Update Tool Plugin?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Update Tool Plugin
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/diegosouzapw-update-tool-plugin/badge)](https://www.skillsdirectory.com/skills/diegosouzapw-update-tool-plugin)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: update-tool-plugin
description: Update an existing LNAI tool plugin
---

# Update Tool Plugin

Guide for modifying an existing plugin to support new features or fix issues.

## Before You Start

Search the official documentation for the target tool to understand:

- Has the configuration format changed?
- Are there new features to support?
- What is the expected output format?

## Plugin Locations

All plugins are in `packages/core/src/plugins/`:

- `claude-code/` - Claude Code
- `cursor/` - Cursor IDE
- `copilot/` - GitHub Copilot
- `windsurf/` - Windsurf IDE
- `opencode/` - OpenCode
- `gemini/` - Gemini CLI
- `codex/` - Codex

## Common Update Scenarios

### Adding Support for a New Feature

1. **Search official docs** for the feature's config format
2. **Update `export()` method** to generate new output files
3. **Remove from `skipped`** in `validate()` if feature was previously skipped
4. **Add tests** for the new export behavior

### Fixing Transformation Issues

1. **Check `transforms.ts`** for transformation logic
2. **Update transformation functions** as needed
3. **Verify with tests** that output matches expected format

### Updating Output Format

1. **Review tool's official docs** for current format requirements
2. **Update `export()` to match** new format requirements
3. **Update tests** to verify new output structure

## Testing Changes

```bash
# Run plugin-specific tests
pnpm test packages/core/src/plugins/<tool-name>/

# Run all tests
pnpm test

# Test against real project
lnai sync --dry-run -t <tool-name>
```

## Key Files to Review

| File                        | Purpose                         |
| --------------------------- | ------------------------------- |
| `index.ts`                  | Main plugin implementation      |
| `types.ts`                  | Tool-specific type definitions  |
| `transforms.ts`             | Format transformation functions |
| `../types.ts`               | Plugin interface definition     |
| `../../utils/transforms.ts` | Shared transform utilities      |

## Validation Patterns

```typescript
// Mark feature as skipped (not supported)
skipped.push({
  feature: "permissions",
  reason: "Tool uses global permissions only",
});

// Add warning (supported but with caveats)
warnings.push({
  message: "MCP servers require manual setup",
  path: ["settings", "mcpServers"],
});
```

## After Making Changes

1. Run `pnpm typecheck` to verify types
2. Run `pnpm test` to verify tests pass
3. Run `lnai sync --dry-run` to preview output
4. Update documentation if behavior changed

## Reference Documentation

- Existing plugins in `packages/core/src/plugins/` as examples
- The Plugin interface in `packages/core/src/plugins/types.ts`
- Transform utilities in `packages/core/src/utils/transforms.ts`

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.