This document covers the core skills available to user-created tools: AI processing, text manipulation, data operations, and local Python execution. These are the building blocks of most tool pipelines.
AI Skills
ProcessPromptWithAI
The primary AI skill. Sends a prompt to the configured LLM and returns the response.
Parameters:
prompt(string, required) — The instruction for the AI. Write what you want it to do with the data; the runtime provides the data automatically.
Behavior: The runtime supplies the previous step's output, or the original input, as context, along with the tool's Instructions as a rules block. The AI sees both this step's prompt and the tool's behavioral rules.
Triggers guided-mode pause: Yes.
ProcessWithThinkForgeMCP
Runs an AI step that can call only an explicitly allowed set of local ThinkForge MCP operations. Use it when the model must search project context or make an MCP document change while reasoning. Use ProcessPromptWithAI when no MCP operation is needed.
Parameters:
prompt(string, required) — The task instructionallowed_tools(string, required) — Exact MCP operation names, supplied as a comma-separated list or JSON string array
Behavior: The model can perform up to ten model-and-operation rounds inside this one step. Unknown allow-list entries fail before the AI request, and the runtime rejects any undeclared operation. The supported model route must provide tool calling; a failure does not fall back to a tool-free response.
Because the allow-list may include document changes, grant only the operations the tool needs.
Triggers guided-mode pause: Yes.
CombineDocuments
Merges multiple input documents into one cohesive document using AI.
Parameters:
prompt(string, optional) — Additional guidance for how to combineoutput_format(string, optional) — Desired output format
Behavior: Source documents are loaded automatically. Use this when the tool's input is multiple files that need to be unified before further processing.
Triggers guided-mode pause: Yes.
ChatResponse
Returns content directly to the chat interface without further processing.
Parameters:
content(string, required) — The content to returnformat(string, optional) — Content format hint
Behavior: Terminates the pipeline and delivers content to the user. Use as the last step when the tool should present its result in a chat context rather than writing to a file.
Text Skills
All text skills are deterministic (no AI call), fast, and operate on the text from the previous step or original input.
ExtractText
Extracts every regex match from the input, one per line.
Parameters:
pattern(string, required) — Regex pattern to matchgroupName(string, optional) — Named group to extract instead of the full match
Use cases: Apply a user-supplied regular expression when arbitrary pattern extraction is the task. Skills that need a specific URL, path, or other typed value extract it from the structured input themselves.
ReplaceText
Find and replace text, literally or by regex.
Parameters:
find(string, required) — Text or pattern to findreplace(string, optional) — Replacement text. Leave empty to delete matches.useRegex(bool, optional) — Treatfindas a regex
FilterLines
Keep or drop lines matching a regex pattern.
Parameters:
pattern(string, required) — Regex patternmode(string, optional) —"keep"(default) or"drop"
SortLines
Sort lines alphabetically or numerically.
Parameters:
direction(string, optional) —"asc"(default) or"desc"numeric(bool, optional) — Sort as numbers instead of text
DedupeLines
Remove duplicate lines, keeping the first occurrence.
Parameters: None.
Data Skills
Data skills work with structured data. The standard pattern is: convert to JSON first (if CSV), then use query/filter/aggregate skills, then optionally render as a table.
CsvToJson
Convert CSV into a JSON array of objects keyed by the header row.
Parameters:
delimiter(string, optional) — Column delimiter (default: comma)
Important: Run this first when input data is CSV. All other data skills expect JSON.
JsonToCsv
Convert a JSON array of objects into CSV text.
Parameters:
delimiter(string, optional) — Column delimiter (default: comma)
QueryJson
Extract values from JSON by dot-path.
Parameters:
path(string, required) — Dot-path expression, e.g.items[0].nameordata.*.id
FilterRows
Keep rows of a JSON array where a column meets a condition.
Parameters:
column(string, required) — Column name to checkop(string, required) — Operator:eq,ne,contains,gt,gte,lt,ltevalue(string, required) — Value to compare against
SelectColumns
Keep only named columns from a JSON array.
Parameters:
columns(string, required) — Comma-separated column names, in desired order
AggregateData
Sum, average, min, max, or count a column, optionally grouped.
Parameters:
column(string, required) — Column to aggregateop(string, required) — Operation:sum,avg,min,max,countgroupBy(string, optional) — Column to group by
ToMarkdownTable
Render a JSON array as a markdown table.
Parameters:
maxRows(int, optional) — Limit output rows
Use as the last step before WriteFile when producing a report.
Local Process Skills
RunPythonScript
Runs one explicitly configured local Python script through a user-selected interpreter.
Step parameters: None. Interpreter, script, arguments, working directory, input mode, timeout, and trust are configured in Tool Configuration.
Behavior: The calling surface supplies normal Agent Tool context. The skill can expand file, folder, output, and project paths into an argument array, write the structured tool envelope to standard input, or pass no context. It returns a structured result containing exit status, standard output, standard error, timing, and timeout or stopped state.
Python runs with the current Windows account permissions and is not sandboxed. ThinkForge does not install Python or packages, manage environments, inspect the script, or repair failures. See Python Script Tools for setup, deployment, bindings, trust, safety, and troubleshooting.