Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx agentmods add commands/ganbin/4d-development-skill/wp-set-attributesgit clone --depth 1 https://github.com/Ganbin/4d-development-skillWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/commands/ganbin/4d-development-skill/wp-set-attributes)<a href="https://agentmods.dev/commands/ganbin/4d-development-skill/wp-set-attributes"><img src="https://agentmods.dev/badge/commands/ganbin/4d-development-skill/wp-set-attributes.svg" alt="Measured on agentmods" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5 | $0.00000 | $0.01303 |
| Opus 5 | $0.00000 | $0.00651 |
| Sonnet 5 | $0.00000 | $0.00261 |
| Haiku 4.5 | $0.00000 | $0.00130 |
Grade A, and why
wp-set-attributes scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured yesterday.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 154 lines — stays where its author put it; the contents beside it link to each section on GitHub.
| Parameter | Type | Description | |
|---|---|---|---|
| targetObj | Object | → | Range or element or 4D Write Pro document |
| attribName | Text | → | Name of attribute to set |
| attribValue | any | → | New attribute value |
| attribObj | Object | → | Object containing attribute names and their corresponding values to set |
Description
The WP SET ATTRIBUTES command allows you to set the value of any attribute in a range, element, document. This command gives you access to any kind of 4D Write Pro internal attribute: character, paragraph, document, table, or image.
In targetObj, you can pass :
- a range, or
- an element (header / footer / body / table / row / paragraph / anchored or inline picture / section / subsection / style sheet), or
- a 4D Write Pro document
You can specify attributes to set for targetObj in one of two ways:
-
Use the attribName and attribValue parameters. In attribName, pass the name of the attribute to set for the target and in attribValue, pass the new value to set. You can pass as many attribName/attribValue pairs as you want in a single call.
-
Use the attribObj parameter to pass a single object containing attribute names and their corresponding values as object properties.
For a comprehensive list of attributes to pass, as well as their scope and respective values, please refer to the 4D Write Pro Attributes section.
Example 1
In this 4D Write Pro area, you selected a word:

If you execute the following code:
$range:=WP Get selection(*;"WParea") //get the selected range
// set the shadow offset in pt for the selected text
WP SET ATTRIBUTES($range;wk text shadow offset;1)
//set the paragraph padding
WP SET ATTRIBUTES($range;wk padding;1)
//define a border of 10 pt
WP SET ATTRIBUTES($range;wk border style;wk solid;wk border width;10)
//set the border colors
WP SET ATTRIBUTES($range;wk border color;"blue";wk border color bottom;"#00FA9A";wk border color right;"#00FA9A")
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- yesterday First seen · 154 lines · 0 tokens per session scan A 6a9ed9b75a08
wp-set-attributes is a command published in the GitHub repository Ganbin/4d-development-skill (9 stars, last pushed 6mo ago), licensed MIT. It costs nothing until one of its globs matches a file; then it loads 1,303 tokens. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-09-03.
Other commands, from other repositories
doctor
Run a system health check to diagnose common issues.
completions
Generate shell completion scripts for bash, zsh, and fish.
watch
Watch installed skills for file changes and auto-sync to agent directories.
automode-edit
Edit the project autoMode block in plain language. The agent interprets the request, builds a proposal, runs critique + hash gate, and writes atomically to .claude/settings.local.json.
git
Git operations with intelligent commit messages and workflow optimization.
checklist
Generate a custom checklist for the current feature based on user requirements.