PseudoSmith is an AI skill that converts structured pseudo-code into clean source code in your chosen language and platform. Write UAB blueprints mixing optional anchors with plain English — the AI interprets intent, not just syntax. You own architecture, security, and scope.
# Add to your Claude Code skills
git clone https://github.com/mitchell-jason/PseudoSmithPseudoSmith is an open-source ai agents skill for AI coding assistants such as Claude Code, Codex CLI, and ChatGPT, built by mitchell-jason. PseudoSmith is an AI skill that converts structured pseudo-code into clean source code in your chosen language and platform. Write UAB blueprints mixing optional anchors with plain English — the AI interprets intent, not just syntax. You own architecture, security, and scope. It has 0 GitHub stars.
PseudoSmith's catalog security scan is still queued. You can run an instant dependency and prompt-injection check now with the "Scan for vulnerabilities" button above.
Clone the repository with "git clone https://github.com/mitchell-jason/PseudoSmith" and add it to your Claude Code skills directory (see the Installation section above).
PseudoSmith is primarily written in C#. It is open-source under mitchell-jason on GitHub, so you can review or fork the full source.
Yes. SkillsLLM lists many other AI Agents skills you can browse and compare side by side. Open the AI Agents category from the badge at the top of this page, or use the Related Skills and comparison links further down to weigh PseudoSmith against similar tools.
No comments yet. Be the first to share your thoughts!
Unlocks once the catalog security scan passes (runs nightly).
The deep catalog scan for this skill is still queued. Run an instant dependency check now instead.
Turn structured pseudo-code into production-ready, idiomatic source.
PseudoSmith is an AI skill that translates UAB blueprints — a hybrid of rigid structural anchors and free-form natural language — into clean, idiomatic code for the language and platform you specify. It is an interpreter of intent, not a compiler. You describe what you want with as much or as little structure as you like; PseudoSmith bridges the gap between intent and working code.
UAB (Universal Architectural Blueprint) is the input format PseudoSmith reads. It is not a formal programming language — it is a lightweight frame for an engineer to think and work in. A blueprint mixes two things:
FUNCTION, CLASS, IF,
BUTTON, DATABASE.QUERY, …) that give the AI clear guardrails and structure.Anchors are recommendations, not requirements. They exist to help both the engineer and the AI stay aligned. You can lean on them heavily for precision, or barely at all and let natural language carry the intent. PseudoSmith interprets the combination.
/*
TARGET_LANGUAGE : Python
TARGET_PLATFORM : linux_x86
TARGET_UI_FRAMEWORK : Tkinter
DELIVERY_MODE : inline
*/
MODULE "CCValidator"
PROCEDURE validateCardNumber(cardNumberString: STRING) -> BOOLEAN
START
// Remove spaces and hyphens, then reverse the string
cleanString = remove spaces and hyphens from cardNumberString
reversedDigits = reverse the string cleanString
...
END
END MODULE
Every blueprint begins with a header enclosed in a /* ... */ block. The header is the
control plane for translation — it tells PseudoSmith what to build and how. The body
describes the logic; the header decides the target.
/*
====
TARGET_LANGUAGE : Python
TARGET_PLATFORM : linux_x86
TARGET_LANGUAGE_VERSION : >=3.11
MEMORY_MODEL : garbage_collected
CONCURRENCY_MODEL : async_await
DATABASE_PROVIDER : postgresql
DATABASE_ACCESS : async
DATABASE_DRIVER : asyncpg
TARGET_UI_FRAMEWORK : none
STYLE_GUIDE : ./styleguide.md
NAMING_CONVENTIONS : snake_case
INDENTATION : spaces:4
GENERATE_UNIT_TESTS : FALSE
GENERATE_DOCSTRINGS : FALSE
GENERATE_DEPENDENCY_GRAPH : FALSE
DETECT_DEAD_CODE : FALSE
DELIVERY_MODE : archive
====
*/
| Field | Description |
|---|---|
TARGET_LANGUAGE |
Output language — Python, C, C++, C#, Java, Kotlin, Swift, JavaScript, TypeScript, VBA, PHP, Rust, … (JavaScript and TypeScript are distinct targets). |
TARGET_PLATFORM |
Target OS/architecture — win32, win64, linux_x86, linux_arm, mac_x64, mac_arm, android_arm64, ios_arm64, embedded_rtos, wasm, custom:<name>, … |
| Field | Description |
|---|---|
TARGET_LANGUAGE_VERSION |
Version specifier, range, latest, or current. Falls back to the platform default if omitted. |
MEMORY_MODEL |
garbage_collected, manual_ownership, automatic_ref_counting. Inferred from the language if omitted. |
CONCURRENCY_MODEL |
async_await, pthreads, std_thread, coroutines, single_threaded, rtos_tasks. |
STYLE_GUIDE |
Path or named style guide; overrides inline defaults. |
NAMING_CONVENTIONS |
PascalCase, camelCase, snake_case, kebab-case, language_default. |
INDENTATION |
spaces:4, spaces:2, tabs (default spaces:4). |
DELIVERY_MODE |
archive (default), inline, or both. |
These become required when the blueprint implies them, and PseudoSmith will pause and ask rather than choosing silently:
| Field | Becomes required when… |
|---|---|
DATABASE_PROVIDER |
The blueprint uses DATABASE.* anchors or describes persistence. Values: sqlite, postgresql, mysql, mariadb, sqlserver, oracle, odbc, custom:<name>. |
DATABASE_ACCESS / DATABASE_DRIVER |
Database access pattern / a non-standard driver is needed. |
TARGET_UI_FRAMEWORK |
GUI anchors appear. none (default), WinForms, WPF, MAUI, Avalonia, SwiftUI, UIKit, AppKit, Swing, JavaFX, AndroidCompose, React, Qt, GTK, … |
Off by default — set the parent flag to TRUE to enable:
| Field | Purpose |
|---|---|
GENERATE_UNIT_TESTS |
Emit unit tests (TEST_FRAMEWORK, TEST_COVERAGE, TEST_OUTPUT_DIR). |
GENERATE_DOCSTRINGS |
Emit docstrings (DOCSTRING_STYLE, DOCSTRING_COVERAGE). |
GENERATE_DEPENDENCY_GRAPH |
Emit a dependency graph (DEPENDENCY_GRAPH_FORMAT, FAIL_ON_CIRCULAR_DEPENDENCY). |
DETECT_DEAD_CODE |
Report unreachable/unused code. |
Value lists are extensible. Unlisted or
custom:<name>values are accepted whenever PseudoSmith can reasonably generate for the target. If a value materially affects implementation and there isn't enough information to proceed safely, it pauses and asks.
Anchors are optional. The same program can be expressed anywhere on a spectrum from almost pure structure to almost pure prose — PseudoSmith interprets the mix. Below, the same feature (validate a credit-card number) is written three ways.
Best when you want tight control over shape, types, and flow.
/* TARGET_LANGUAGE: Python TARGET_PLATFORM: linux_x86 */
MODULE "CCValidator"
PROCEDURE validateCardNumber(cardNumber: STRING) -> BOOLEAN
START
clean: STRING = STRIP(cardNumber, " -")
IF LENGTH(clean) < 13 OR LENGTH(clean) > 19 THEN
RETURN FALSE
ENDIF
sum: INT = 0
alt: BOOL = FALSE
FOR digit IN REVERSE(clean)
d: INT = TO_INT(digit)
IF alt THEN
d = d * 2
IF d > 9 THEN d = d - 9 ENDIF
ENDIF
sum = sum + d
alt = NOT alt
ENDFOR
RETURN (sum MOD 10) == 0
END
END MODULE
The typical sweet spot: anchors fix the skeleton, natural language fills the steps.
/* TARGET_LANGUAGE: Python TARGET_PLATFORM: linux_x86 */
MODULE "CCValidator"
PROCEDURE validateCardNumber(cardNumber: STRING) -> BOOLEAN
START
// strip spaces and hyphens; reject if not 13-19 digits
clean = remove all spaces and hyphens from cardNumber
IF clean is not between 13 and 19 digits THEN
RETURN FALSE
ENDIF
// standard Luhn checksum over the digits
RETURN clean passes the Luhn check
END
END MODULE
Best for quick intent capture; PseudoSmith infers the structure.
/* TARGET_LANGUAGE: Python TARGET_PLATFORM: linux_x86 */
MODULE "CCValidator"
Write a function validateCardNumber that takes a card number string and returns true or
false. Ignore spaces and hyphens. Reject anything that isn't 13 to 19 digits long. Otherwise
return whether it passes the standard Luhn checksum.
All three produce equivalent, idiomatic output. The difference is how much you decide explicitly vs. how much you delegate — and the more you leave to prose, the more likely a material gap is surfaced at the ambiguity checkpoint.
TARGET_LANGUAGE,
TARGET_PLATFORM) and any conditionally-required fields (e.g. DATABASE_PROVIDER,
TARGET_UI_FRAMEWORK).Optional, opt-in features: unit tests, docstrings, dependency graphs, and dead-code detection — each enabled only via its header flag.
Languages: Python, C, C++, C#, Java, Kotlin, Swift, JavaScript, TypeScript, VBA, PHP, Rust (and others — the value lists are extensible).
UI frameworks: Tkinter, WinForms, WPF, Avalonia, MAUI, SwiftUI, UIKit, AppKit, Swing, JavaFX, Android Compose, React, Qt, GTK, and more.
Databases: SQLite, Postgr