AGENT SKILL

portless

Set up and use portless for named local dev server URLs (e.g. https://myapp.localhost instead of http://localhost:3000). Use when integrating portless into a project, configuring dev server names, setting up the local proxy, working with .localhost domains, or troubleshooting port/proxy issues.

License 许可
Apache-2.0
最近更新
2026-11-09
Stars
★ 14
Forks
3

01 前言 Front Matter

name
chunk
namespace
aiwg
platforms
[ "all" ]
description
Split a file into overlapping chunks suitable for parallel fanout processing and emit a manifest describing each chunk

02 资源文件 1

03 SKILL.md 正文

Chunk

Split a file into overlapping chunks suitable for parallel fanout processing. Produces numbered chunk files and a manifest.json describing each chunk's location, line range, and overlap metadata.

Triggers

Alternate expressions and non-obvious activations:

  • "break this file up for parallel processing" → chunk with defaults
  • "prepare for fanout" → chunk + write manifest
  • "split into pieces" → chunk at semantic boundaries
  • "make this codebase searchable" → chunk directory of files

Trigger Patterns Reference

Pattern Example Action
Chunk file "chunk this file" Apply semantic-boundary strategy, write to .aiwg/rlm-chunks/
Size override "chunk into 100-line pieces" --size 100
Overlap override "chunk with 50-line overlap" --overlap 50
Fixed count "split into fixed-size chunks" --strategy fixed-count
JSON output "chunk as JSON" --format json
Custom directory "chunk into tmp/chunks/" --output tmp/chunks/
Dry run "how would this file be chunked?" Read file, describe strategy, no writes

Behavior

When triggered:

  1. Parse arguments — identify source file, strategy, size, overlap, format, and output directory from user input.

  2. Read the source file — determine total line count and content type (code, markdown, prose, config).

  3. Select chunking strategy:

    • semantic-boundary (default) — split at headings (##, ###), blank lines between sections, function/class definitions, or import blocks. Preserves logical units.
    • fixed-count — fixed number of lines per chunk regardless of content. Use when content has no clear structure.
    • adaptive — measure content density (code density, average line length) and shrink chunk size for dense regions, expand for sparse ones.
  4. Apply overlap — each chunk includes the last --overlap lines of the previous chunk and the first --overlap lines of the next. This ensures queries that span chunk boundaries are answerable from either side.

  5. Write output:

    • Text mode: one file per chunk, named chunk-0001.txt, chunk-0002.txt, etc.
    • JSON mode: single chunks.json with each chunk's content embedded as a field.
    • Always write manifest.json regardless of format.
  6. Report result — print chunk count, output directory, and manifest path.

Manifest Format

{
  "source": "src/auth/middleware.ts",
  "source_lines": 842,
  "strategy": "semantic-boundary",
  "chunk_size": 200,
  "overlap": 20,
  "format": "text",
  "output_dir": ".aiwg/rlm-chunks/middleware-ts/",
  "created_at": "2026-04-01T14:23:00Z",
  "chunks": [
    {
      "id": "chunk-0001",
      "file": ".aiwg/rlm-chunks/middleware-ts/chunk-0001.txt",
      "start_line": 1,
      "end_line": 218,
      "overlap_start": 0,
      "overlap_end": 20,
      "boundary_type": "function",
      "boundary_label": "validateToken()"
    },
    {
      "id": "chunk-0002",
      "file": ".aiwg/rlm-chunks/middleware-ts/chunk-0002.txt",
      "start_line": 199,
      "end_line": 412,
      "overlap_start": 20,
      "overlap_end": 20,
      "boundary_type": "class",
      "boundary_label": "AuthMiddleware"
    }
  ]
}

Parameters

  • <file> — Source file to chunk (required)
  • --size N — Target chunk size in lines (default: 200). For adaptive, this is the base size before density adjustments.
  • --overlap N — Lines of overlap on each side of a chunk boundary (default: 20)
  • --strategy semantic-boundary|fixed-count|adaptive — Chunking strategy (default: semantic-boundary)
  • --format json|text — Output format (default: text)
  • --output <dir> — Output directory (default: .aiwg/rlm-chunks/<filename>/)

Examples

Example 1: Default chunk

User: "chunk src/auth/middleware.ts"

Action:

aiwg chunk src/auth/middleware.ts

Response: "Split middleware.ts (842 lines) into 5 chunks using semantic-boundary strategy. Overlap: 20 lines. Manifest: .aiwg/rlm-chunks/middleware-ts/manifest.json"


Example 2: Small chunks for a dense file

User: "chunk this file into 100-line pieces with 30-line overlap for the RLM fanout"

Action:

aiwg chunk src/core/parser.ts --size 100 --overlap 30

Response: "Split parser.ts (1,240 lines) into 14 chunks. 100-line target, 30-line overlap. Manifest: .aiwg/rlm-chunks/parser-ts/manifest.json"


Example 3: Fixed-count for a flat config file

User: "split config/nginx.conf into fixed chunks"

Action:

aiwg chunk config/nginx.conf --strategy fixed-count --size 150

Response: "Split nginx.conf (620 lines) into 5 fixed-count chunks. Manifest: .aiwg/rlm-chunks/nginx-conf/manifest.json"


Example 4: JSON format for programmatic use

User: "chunk the migration SQL file as JSON"

Action:

aiwg chunk db/migrations/0042_schema.sql --format json --output .aiwg/rlm-chunks/migration/

Response: "Split 0042_schema.sql (380 lines) into 2 JSON chunks. Output: .aiwg/rlm-chunks/migration/chunks.json. Manifest: .aiwg/rlm-chunks/migration/manifest.json"

Clarification Prompts

If the user's intent is ambiguous:

  • "Should I split at semantic boundaries (headings, functions) or use fixed line counts?"
  • "What chunk size would you like? Default is 200 lines."
  • "Should the output go to .aiwg/rlm-chunks/ or a custom directory?"

References

  • @$AIWG_ROOT/agentic/code/addons/rlm/skills/fanout/SKILL.md — Next step after chunking
  • @$AIWG_ROOT/agentic/code/addons/rlm/skills/rlm-prep/SKILL.md — One-shot prep (chunk + index)
  • @$AIWG_ROOT/agentic/code/addons/rlm/skills/rlm-search/SKILL.md — Full pipeline using chunk output
  • @$AIWG_ROOT/agentic/code/addons/rlm/schemas/rlm-chunk-manifest.yaml — Manifest schema
  • @$AIWG_ROOT/agentic/code/addons/aiwg-utils/rules/context-budget.md — Parallel context budget rules

04 同仓库更多 Skills

salexandr0s
salexandr0s/ai-config

swiftui-performance-audit

Audit and improve SwiftUI runtime performance from code review and architecture. Use for requests to diagnose slow rendering, janky scrolling, high CPU/memory usage, excessive view updates, or layout thrash in SwiftUI apps, and to provide guidance for user-run Instruments profiling when code review alone is insufficient.

代码审查
★ 14
salexandr0s
salexandr0s/ai-config

stageshow

Build faux product UI that looks like a real product, as a still illustration or an animated demo with a cursor. Browser and app windows, dashboards, phones, notifications, terminals, bento grids and cursor walkthroughs, framed, masked and cropped the way a marketing page, feature card or docs hero needs them. Use whenever someone wants a fake or mocked UI, a product demo or walkthrough animation, a hero or feature-card illustration of an app, a product shot in the style of a polished marketing site, or an animated cursor doing things in an interface, even if they never say "faux UI". React and plain CSS.

前端开发
★ 14
salexandr0s
salexandr0s/ai-config

shadcn

Manages shadcn components and projects — adding, searching, fixing, debugging, styling, and composing UI. Provides project context, component docs, and usage examples. Applies when working with shadcn/ui, component registries, presets, --preset codes, or any project with a components.json file. Also triggers for "shadcn init", "create an app with --preset", or "switch to --preset".

★ 14
salexandr0s
salexandr0s/ai-config

ios-simulator-skill

21 production-ready scripts for iOS app testing, building, and automation. Provides semantic UI navigation, build automation, accessibility testing, and simulator lifecycle management. Optimized for AI agents with minimal token output.

测试与质量Skill与智能体开发
★ 14
salexandr0s
salexandr0s/ai-config

deepsec

Run deepsec, an AI-powered cyber-security vulnerability scanner. Activates when the user invokes /deepsec, asks to run deepsec, or wants to scan their repo, branch, or uncommitted changes for vulnerabilities.

★ 14
salexandr0s
salexandr0s/ai-config

vercel-deploy

Deploy applications and websites to Vercel. Use when the user requests deployment actions like "deploy my app", "deploy and give me the link", "push this live", or "create a preview deployment".

运维与部署
★ 14