Skills DirectorySkills Directory
SkillsLearnSecurityCategoriesDocsBlogPro
Sign InSubmit Skill
Skills Directory

Security-tested agent skills for Claude, coding agents, and AI workflows.

Directory

  • Browse Skills
  • All Skills A–Z
  • Claude Skills
  • Claude Code Skills
  • Agent Skills
  • Categories
  • Authors
  • Submit a Skill

Learn

  • Learn Hub
  • Install Claude Skills
  • Write SKILL.md
  • Skills vs MCP
  • Directories Compared

Security

  • Security
  • Methodology
  • Secure Claude Skills
  • Security Badges
  • Chrome Extension
  • Skill Manager

Company

  • About
  • Community
  • Blog
  • API Docs
  • Advertise

2026 Skills Directory. All rights reserved.

ProTermsPrivacyRefunds
Back to skills

Personal Tool Builder

ASecurity

当你想把自己反复手动操作的痛点做成工具(脚本/CLI/本地应用)时使用;做从"挠自己的痒处"出发的快速原型→可靠脚本→可分享工具的演进,产出可执行的方案、技术栈选型与可移植/安全清单;不适用于无真实自身痛点的市场臆想、企业级多人协作系统或纯前端 UI 设计。触发词:自用工具、挠自己痒处、CLI 工具、本地应用、自动化我的重复任务

3 stars
0 votes
0 copies
2 views
Added 9/19/2026
ai-agentsjavascriptpythonjavashellbashsqlnodegitapidatabase

Works with

cursorcliapi

Security Analysis

A100/100

Scanned 9/19/2026

$npx -y skills add findscripter/everything-skills --skill personal-tool-builder --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Personal Tool Builder?

Add the live security badge to your README — it updates automatically with every re-scan.

Security grade badge for Personal Tool Builder
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/findscripter-personal-tool-builder/badge)](https://www.skillsdirectory.com/skills/findscripter-personal-tool-builder)

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

Download with Pro
Files
SKILL.md
---
name: personal-tool-builder
title: 自用工具构建方法论
description: 当你想把自己反复手动操作的痛点做成工具(脚本/CLI/本地应用)时使用;做从"挠自己的痒处"出发的快速原型→可靠脚本→可分享工具的演进,产出可执行的方案、技术栈选型与可移植/安全清单;不适用于无真实自身痛点的市场臆想、企业级多人协作系统或纯前端 UI 设计。触发词:自用工具、挠自己痒处、CLI 工具、本地应用、自动化我的重复任务
domain: 协作/automation
triggers: [做个工具, 自用工具, 挠自己的痒处, 解决我自己的问题, 写个 CLI, 本地小应用, 自动化我的, 给自己用的脚本]
tags: [协作-自动化, cli, 本地优先, 快速原型, 脚本化, 工具演进, 可移植性, 凭据安全]
level: 进阶
status: stable
agents: [claude-code, codex, cursor, gemini-cli]
tools: [Bash, Write, Edit, Read]
requires: []
related: [developer-experience-optimizer, ai-native-cli-design, zapier-make-automation, micro-saas-launcher]
combines_with: [file-organizer, agent-tool-builder]
license: MIT
source: sickn33/agentic-awesome-skills
source_license: MIT
---
## 何时使用

当你有一个**自己反复遭遇的真实痛点**,想用最小成本做成工具来解决它时。最好的产品常常起步于个人工具:先给自己挠痒处,做到自己每天都用,再发现别人也有同样的痒处。

适用:把每天手动操作 10 次的事自动化、做 CLI、做本地优先的小应用、把脚本逐步养成产品、为自己 dogfood。

**不该用(负边界)**:
- 没有真实自身痛点,只是"觉得别人会想要""这会很酷""市场上有空白"——这类多半是坏痒处,先别建。
- 一上来就要企业级、多人协作、跨团队的复杂系统。
- 纯 UI/视觉设计需求。
- 需要环境特定的真实测试与专家评审才能定论的场景——本方法论不替代实测。

## 步骤

1. **识别真痒处**:用一句话能描述问题;每周都会遇到;已经手动解决过;理想情况下每天会用。任一不满足就要警惕。
2. **从丑陋起步(Day 1)**:写一个只解决"你自己问题"的脚本——没有 UI、硬编码路径和你的数据、零错误处理、你看得懂每一行。
3. **跑稳(Week 1)**:处理你自己的边界情况,加上你真正需要的功能;仍然丑,但可靠。
4. **可能帮到别人(Month 1)**:给未来的你写最简文档、用配置替代硬编码、再考虑分享。
5. **选型**:CLI 用 Node(commander/chalk) 或 Python(click);存储按复杂度选 JSON 文件 / better-sqlite3 / IndexedDB / Electron/Tauri+SQLite。
6. **判断是否产品化**:见下方信号表,命中"别人主动要""每天在用""解决 $100+ 问题""别人愿付费"再投入。
7. **分享前过安全与可移植清单**(见注意事项)。

## 指令

**Node CLI 起手(commander)**:
```javascript
#!/usr/bin/env node
import { Command } from 'commander';
const program = new Command();
program.name('mytool').description('一句话说明').version('1.0.0');
program.command('do-thing')
  .option('-v, --verbose', '详细输出')
  .action(async (opts) => { /* 你的逻辑 */ });
program.parse();
```
package.json 关键:`"bin": { "mytool": "./bin/cli.js" }`,依赖按需取 commander/chalk/ora/inquirer/conf。

**Python CLI 起手(click,推荐)**:
```python
import click
@click.group()
def cli(): """工具说明"""; pass
@cli.command()
@click.option('--name', '-n', required=True)
def process(name): click.echo(f'Processing {name}')
if __name__ == '__main__': cli()
```

**本地存储——简单用 JSON,复杂用 SQLite**:
```javascript
import { homedir } from 'os'; import { join } from 'path';
const DATA_DIR = join(homedir(), '.mytool');   // 可移植路径
// JSON:loadData/saveData 读写 join(DATA_DIR,'data.json')
// SQLite:new Database(join(DATA_DIR,'data.db')),建表用 CREATE TABLE IF NOT EXISTS
```

**演进四阶段**:① 个人脚本(只你用、硬编码,数小时~数天)→ ② 可分享工具(README + 基本错误信息 + 配置文件,数天)→ ③ 公开工具(安装说明、跨平台、版本号、基本测试,一两周)→ ④ 产品(落地页、文档站、支持渠道、隐私友好埋点、收款,数周~数月)。

## 示例

**场景:把每天手动转码的操作做成 CLI。**

1. 识别:每天手动跑 ffmpeg 10 次 → 真痒处。
2. Day 1 丑脚本:硬编码输入目录,直接调 ffmpeg,跑通即可。
3. 加依赖检查,避免"在我机器上能跑":
```javascript
import { execSync } from 'child_process';
function checkDep(cmd, hint) {
  try { execSync(`which ${cmd}`, { stdio: 'ignore' }); }
  catch { console.error(`Missing: ${cmd}\nInstall: ${hint}`); process.exit(1); }
}
checkDep('ffmpeg', 'brew install ffmpeg');
```
4. 路径改可移植(`join(homedir(), '.mytool', ...)` 而非 `'~/data.json'`)。
5. 加自文档化头注释(WHAT/WHY/WHERE/DEPS + 最后可用日期),方便半年后的你。
6. 朋友开始要 → 对照产品化信号,考虑加 web UI 并 `npm publish`。

## 注意事项

- **凭据绝不入码**(CRITICAL):`const KEY='sk-xxx'` 是错的;用 `process.env.MY_API_KEY` 或 gitignore 的 config.json。提交前审查 git 历史是否泄密。
- **服务只绑 localhost**(HIGH):个人工具的 web UI 必须 `app.listen(3000, '127.0.0.1')`,绝不用 `'0.0.0.0'` 暴露到网络。
- **可移植性**:硬编码绝对路径→用 `homedir()`/env;shell 写进 shebang;缺依赖要检测并提示安装;OS 差异用 `platform()`/`sep` 处理。脚本顶部加 `#!/usr/bin/env node`(或 python3)。
- **驯服配置**:优先级 智能默认 > 单一配置文件 > 环境变量 > 命令行 flag > 交互提问。"我会想改吗"才暴露选项,而非"有人可能想改吗"。每个边界都加 flag 会让配置比工具还大。
- **为遗忘而设计**:假设未来的你不记得为何/如何/数据在哪/依赖干嘛。README 写 WHY 而非只写 WHAT;架构简单、依赖最少、数据用标准格式。出错时友好降级,打印数据位置让用户手动取数据。
- **别忘的小项**:CLI 要有 `.description()` 与 `--help`(否则未来的你忘了怎么用);保留版本号与 `--version`;移除调试 console.log;同步操作包 try/catch。
- **何时放手**:6 个月没用、问题已不存在、有更好工具、会推倒重来——就归档(注明原因、导出标准格式数据、别删,可能以后还要)。

## 互见

- 想把工具变现/做成 SaaS → micro-saas-launcher
- 浏览器扩展/Chrome 扩展 → browser-extension-builder
- 自动化/工作流/cron/触发器 → workflow-automation
- 后端/API/数据库 → backend
- AI/GPT/Claude/LLM 包装 → ai-wrapper-product
- Telegram bot → telegram-bot-builder

---
采编自 sickn33/antigravity-awesome-skills(MIT)。原条目上游源为 vibeship-spawner-skills(Apache 2.0)。

Attribution

findscripterfindscripter
View sourceSee grades on GitHubMore from findscripter →
SSkills DirectorySkills Directory

Ship a skill? Prove it's safe.

Free 120-pattern security scan, letter grade, and an embeddable README badge.

Submit a skill

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 (0)

No comments yet. Be the first to comment!

SSkills DirectorySkills Directory

Ship a skill? Prove it's safe.

Free 120-pattern security scan, letter grade, and an embeddable README badge.

Submit a skill

Related Skills

Caveman

Terse caveman voice: answer first, fluff gone, every technical fact kept. Use for /caveman, "caveman mode", "talk like caveman", "be brief", "less tokens". Stays on until "stop caveman" or "normal mode".

1100021 votes

Hyperplan

Adversarial multi-agent planning skill. Self-orchestrates 5 hostile category members (unspecified-low, unspecified-high, deep, ultrabrain, artistry) via team-mode for ruthless cross-critique debate, distills only the defensible insights, then MANDATORILY hands the distilled insight bundle to the `plan` agent for executable plan formalization. Use when planning needs maximum rigor and surfacing of weak assumptions, blind spots, and over-engineering. Triggers: 'hyperplan', 'hpp', '/hyperplan', ...

698621 votes

Writing Skills

Create and manage Claude Code skills in HASH repository following Anthropic best practices. Use when creating new skills, modifying skill-rules.json, understanding trigger patterns, working with hooks, debugging skill activation, or implementing progressive disclosure. Covers skill structure, YAML frontmatter, trigger types (keywords, intent patterns), UserPromptSubmit hook, and the 500-line rule. Includes validation and debugging with SKILL_DEBUG. Examples include rust-error-stack, cargo-dep...

3931 votes

Mcp Code Execution

Routes multi-tool workflows through MCP servers for large datasets and pipelines. Use when Bash tool overhead is limiting throughput on data-heavy tasks.

3421 votes

catchup

Recovers the conversation and failed tool calls of a previous Codex, Amp, Claude Code, Antigravity, Cline, Copilot CLI, Cursor, DeepSeek Harness, Grok Build, Kimi, OpenCode, Pi Agent, or ZCode session. Use when the user says "catch up", "what did the last session do", "get me up to speed", "I switched agents", asks to recover/summarize a previous session before continuing, or asks to diagnose or report a catchup failure. Do NOT use for the current conversation, git history, or any non-agent log.

741 votes
View all in ai-agents →