skills/manykarim/robotframework-agentskills/robotframework-keyword-builder

robotframework-keyword-builder

SKILL.md

Robot Framework Keyword Builder

Create user keywords in Robot Framework syntax from structured input. Output JSON only.

Input (JSON)

Provide input via --input or stdin. Example:

{
  "keyword_name": "Create User",
  "description": "Creates a new user via the UI.",
  "arguments": [
    {"name": "username", "type": "str"},
    {"name": "role", "default": "viewer"}
  ],
  "tags": ["ui", "smoke"],
  "setup": {"keyword": "Open Browser", "args": ["${URL}", "chromium"]},
  "teardown": {"keyword": "Close Browser"},
  "style": "simple",
  "steps": [
    {"keyword": "Click", "args": ["Add User"]},
    {"keyword": "Input Text", "args": ["Username", "${username}"]},
    {"keyword": "Click", "args": ["Save"]}
  ]
}

Command

python scripts/keyword_builder.py --input keyword.json

Detect embedded-argument style from an existing project:

python scripts/keyword_builder.py --input keyword.json --project-root . --detect-embedded

Return values

Use "return_value" to add a RETURN statement at the end of the keyword:

{
  "keyword_name": "Get Full Name",
  "arguments": [{"name": "first"}, {"name": "last"}],
  "steps": [{"assign": ["${result}"], "keyword": "Catenate", "args": ["${first}", "${last}"]}],
  "return_value": "${result}"
}

Multiple return values:

"return_value": ["${var1}", "${var2}"]

Notes

  • RF 7+ type annotations: Robot Framework 7 and later support type annotations in [Arguments] using ${name}: type syntax (e.g. ${count}: int). This builder does not yet generate that syntax; type information is recorded in [Documentation] only.

Output (JSON)

  • artifact: keyword block
  • warnings and suggestions
  • meta: any detected project conventions
Weekly Installs
6
GitHub Stars
9
First Seen
Feb 11, 2026
Installed on
opencode5
claude-code5
github-copilot5
codex5
kimi-cli5
gemini-cli5