跳到正文
cccskills
免费在 GitHub 公开

kelly-portrait-retouch

Natural, identity-preserving portrait retouching with a local CLI and a Busabase-backed review app. Use when the user asks to 美颜, 修人像, 磨皮, 提亮肤色, portrait retouch, headshot cleanup, profile-photo polish, before/after comparison, or batch portrait enhancement. Default to local non-destructive processing, preserve facial structure and skin texture, and require explicit approval before replacing or publishing any image.

中文简介正在准备中。当前显示原文说明。

实测评分 未实测

查看安装方法

包含的文件(53)

  • SKILL.md6.1 KB
  • agents/openai.yaml254 B
  • assets/screenshots/overview.webp130 B
  • busabase.json797 B
  • content/_folder.json146 B
  • content/candidates/base.json3.0 KB
  • content/candidates/records.ndjson664 B
  • content/jobs/base.json1.5 KB
  • content/jobs/records.ndjson337 B
  • content/kelly-portrait-retouch-app/_node.json166 B
  • content/kelly-portrait-retouch-app/.busabaseignore194 B
  • content/kelly-portrait-retouch-app/app/app.js15.5 KB
  • content/kelly-portrait-retouch-app/app/assets/demo/portrait-comparison.jpg253.1 KB
  • content/kelly-portrait-retouch-app/app/assets/demo/portrait-retouched.jpg168.8 KB
  • content/kelly-portrait-retouch-app/app/assets/demo/portrait-source.jpg119.5 KB
  • content/kelly-portrait-retouch-app/app/assets/demo/source.json239 B
  • content/kelly-portrait-retouch-app/app/base-ui.css21.7 KB
  • content/kelly-portrait-retouch-app/app/i18n/messages.js2.8 KB
  • content/kelly-portrait-retouch-app/app/index.html707 B
  • content/kelly-portrait-retouch-app/app/js/busabase-client.js226 B
  • content/kelly-portrait-retouch-app/app/js/config.js4.6 KB
  • content/kelly-portrait-retouch-app/app/js/connect-gate.js5.1 KB
  • content/kelly-portrait-retouch-app/app/js/providers/busabase-provider.js8.5 KB
  • content/kelly-portrait-retouch-app/app/js/providers/demo-provider.js709 B
  • content/kelly-portrait-retouch-app/app/js/providers/index.js255 B
  • content/kelly-portrait-retouch-app/app/js/retouch-model.js4.8 KB
  • content/kelly-portrait-retouch-app/app/js/runtime.js3.4 KB
  • content/kelly-portrait-retouch-app/app/styles.css16.7 KB
  • content/kelly-portrait-retouch-app/app/styles/editorial.css30.7 KB
  • content/kelly-portrait-retouch-app/app/vendor/busabase-airapp-gate.css6.1 KB
  • content/kelly-portrait-retouch-app/app/vendor/busabase-airapp-gate.js11.2 KB
  • content/kelly-portrait-retouch-app/app/vendor/busabase-airapp.js556.0 KB
  • content/kelly-portrait-retouch-app/app/vendor/busabase-sdk.js849.5 KB
  • content/kelly-portrait-retouch-app/package.json1.1 KB
  • content/kelly-portrait-retouch-app/pnpm-lock.yaml5.2 KB
  • content/kelly-portrait-retouch-app/pnpm-workspace.yaml50 B
  • content/kelly-portrait-retouch-app/scripts/check-editorial.mjs6.1 KB
  • content/kelly-portrait-retouch-app/scripts/check.mjs4.6 KB
  • content/kelly-portrait-retouch-app/server.js3.1 KB
  • content/kelly-portrait-retouch-app/test/retouch-model.test.mjs1.9 KB
  • content/settings/base.json1.6 KB
  • content/settings/records.ndjson337 B
  • package.json357 B
  • pnpm-lock.yaml14.5 KB
  • pnpm-workspace.yaml50 B
  • references/product-overlay.md3.7 KB
  • references/retouch-policy.md1.8 KB
  • scripts/detect-faces.swift986 B
  • scripts/lib/portrait-busabase.mjs3.1 KB
  • scripts/retouch.mjs8.7 KB
  • scripts/sync-candidate.mjs5.2 KB
  • scripts/sync-content.mjs2.5 KB
  • test/retouch.test.mjs3.0 KB

SKILL.md(原文)

安装前可以查看交给 AI 代理的指令内容。

Kelly Portrait Retouch

Turn portraits into natural, reviewable candidates. Keep the original image and facial identity intact. Use the App as the review surface and the trusted CLI as the image-processing boundary.

Required Skills

  1. Read and follow $kelly-app-skill-creator for the operator workflow, responsive UI, product onboarding, and visual acceptance contract.
  2. Read and follow $busabase-app-creator for Busabase resource modeling, AirApp runtime limits, security, validation, synchronization, and deployment.
  3. Use $kelly-app-skill-creator-tests for repository-level conformance, persistence, OSS Busabase, OAuth, and AirApp parity checks.

The approved product blueprint is product-overlay.md.

Defaults

  • Use the natural preset at strength 35 unless the user asks otherwise.
  • Create a new sibling file ending in _retouched; never overwrite by default.
  • Strip EXIF/GPS metadata by default. Preserve metadata only when explicitly requested.
  • Preserve face shape, age, skin tone, moles, freckles, scars, and other identity cues unless the user names a specific reversible edit.
  • Do not whiten skin, enlarge eyes, shrink a face, or change body shape by implication. Ask before structural or identity-changing edits.
  • Treat portraits as sensitive biometric data. Do not upload them to an external model unless the user explicitly approves that route.

Local CLI

Install once from the skill directory:

pnpm install --frozen-lockfile

Create one natural candidate:

node scripts/retouch.mjs portrait.jpg --preset natural --strength 35

Create a candidate and a side-by-side proof:

node scripts/retouch.mjs portrait.jpg --output exports/portrait-natural.jpg --compare exports/portrait-proof.jpg

Create a reusable processing summary, inspect the dry-run sync plan, then write the candidate through the trusted Busabase boundary:

node scripts/retouch.mjs portrait.jpg --compare exports/portrait-proof.jpg --summary exports/portrait-summary.json
node scripts/sync-candidate.mjs exports/portrait-summary.json
node scripts/sync-candidate.mjs exports/portrait-summary.json --apply

Use --face x,y,width,height when automatic face detection is unavailable or needs correction. Coordinates are image pixels after orientation is applied. Run node scripts/retouch.mjs --help for every option.

The CLI uses macOS Vision for face rectangles when available, then applies a subtle masked texture blend with Sharp. On other platforms it performs only whole-frame tone/detail polish unless --face is supplied. It never changes facial geometry.

Workflow

  1. Inspect the source image at full resolution. Note blur, compression, clipping, mixed lighting, and whether the requested result is realistic.
  2. Confirm any ambiguous identity-changing request. For ordinary “美颜”, use the natural defaults without asking.
  3. Run the CLI and keep its JSON summary. Generate a comparison image when the user needs to judge strength.
  4. Inspect the candidate at face scale and full-frame scale. Reject waxy skin, halos, flattened detail, color shifts, or softened eyes/hair.
  5. Present the candidate and comparison for review. Iterate by reducing strength before adding more processing.
  6. When Busabase is available, run the sync command as a trusted Agent. It uploads source/output/comparison files through Busabase Assets and upserts the jobs and candidates Bases with stable idempotency keys. Base rows store asset IDs, not image bytes or expiring URLs.
  7. Export or replace only after the user names the approved candidate. Publishing remains outside this skill.

Presets

  • natural: restrained tone lift and face-local texture softening; default.
  • fresh: slightly brighter and more saturated for casual/social portraits.
  • studio: neutral color, restrained contrast, and crisper detail for headshots.

Read retouch-policy.md before fulfilling a structural edit, processing a minor's portrait, or using an external image model.

App Contract

The canonical App source is in content/kelly-portrait-retouch-app/. It provides a quiet list/detail review desk with hash routes, before/after inspection, strength and preset metadata, approve/change/block decisions, bilingual chrome, phone navigation, and Help & Settings. ?demo=queue opens deterministic read-only data.

Busabase resources:

  • Folder kelly-portrait-retouch owns the workflow.
  • Base jobs stores one row per local processing request and its lifecycle.
  • Base candidates stores candidate provenance, checks, and human verdicts.
  • Base settings stores non-secret defaults and onboarding state.
  • Busabase Assets stores source, candidate, and comparison files; Base records keep their stable asset IDs.

The browser never receives filesystem access, API keys, or Vault values. The trusted Agent runs the CLI and performs content-addressed asset upload plus idempotent record writes. The App only reads approved state and records human decisions through stale-version-protected ChangeRequests. Runtime readiness and product onboarding are separate; incomplete onboarding suppresses workflow rows.

Validation

Run:

pnpm test
pnpm --dir content/kelly-portrait-retouch-app check
node scripts/retouch.mjs --help
node scripts/sync-candidate.mjs --help

评价

还没有评价。欢迎分享你的使用感受。

评论

无需登录即可发表。欢迎分享使用感受、提问,或说明在哪些环境下无法运行。

还没有评论。来写第一条吧。

提交后会立即公开。请勿填写邮箱、电话等个人信息。URL 最多 2 个。

0 / 1000 字

此表单受 reCAPTCHA 保护,适用 Google 的隐私权政策和服务条款。

同一仓库的技能

Align all AI coding agents to a single source of truth. AGENTS.md for rules, .agents/skills/ for skills, symlinks for everything else. Use when setting up a repo for multiple agents, or when links are missing, broken, or out of date.

中文简介正在准备中。当前显示原文说明。

mr-kelly/skills52026年10月22日 更新

Read, answer and post on the Buda community forum at community.buda.im through its /api/v1/community REST API. Lists categories and posts, reads a thread with its replies, searches, and publishes posts and replies behind an explicit confirmation. Use when the user invokes $buda-community or /buda-community, asks what is happening in the Buda community, wants an unanswered question triaged or answered, or wants something posted or announced there.

中文简介正在准备中。当前显示原文说明。

mr-kelly/skills52026年10月22日 更新

Read, answer and post on the Busabase community forum at community.busabase.com through its /api/v1/community REST API. Lists categories and posts, reads a thread with its replies, searches, and publishes posts and replies behind an explicit confirmation. Use when the user invokes $busabase-community or /busabase-community, asks what is happening in the Busabase community, wants an unanswered question triaged or answered, or wants something posted or announced there.

中文简介正在准备中。当前显示原文说明。

mr-kelly/skills52026年10月22日 更新

kelly-ads

免费

Ad-campaign command desk (投放指挥台, Busabase App-in-Skill) for a cross-border e-commerce seller running Amazon Ads, Meta (FB/IG), TikTok Ads, and Google Ads. Use when the user invokes $kelly-ads or /kelly-ads, or asks about 投放, ad campaigns, ad spend, ACOS, ROAS, Amazon Ads, TikTok ads, Meta ads, Google Ads, search terms, negative keywords, bid adjustment, budget pacing, CPC spikes, rejected ads, ad anomaly detection, 广告优化, or reviewing agent-proposed adjustment cards (negative keyword, bid down/up, pause target, budget shift, creative refresh).

中文简介正在准备中。当前显示原文说明。

mr-kelly/skills52026年10月22日 更新

Busabase-backed App-in-Skill low-code agent configuration and governance console for a platform team. Use when the user invokes $kelly-agent-builder or /kelly-agent-builder, wants to review or edit a catalog of mock LLM agent configs, check quota usage, find configs that need attention, move a draft to live, pause a live agent, or archive an agent. Mock config/governance console only — it never provisions or calls any real agent.

中文简介正在准备中。当前显示原文说明。

mr-kelly/skills52026年10月22日 更新

Review board (Busabase App-in-Skill) that runs a fixed suite of mock test cases against a baseline vs candidate agent version and surfaces rubric-scored regressions before a release. Use when the user invokes $kelly-agent-eval or /kelly-agent-eval, wants to review agent-version regressions, compare baseline vs candidate quality, triage a release, or record a release approve/block decision. Deterministic mock rubric scores only — not a real LLM-judge call, and it never deploys anything.

中文简介正在准备中。当前显示原文说明。

mr-kelly/skills52026年10月22日 更新

查看 mr-kelly 的全部技能

报告此技能的问题