paralleldrive/aidd/aidd-sudolang-syntax

Claude Code and agent skill by paralleldrive/aidd

Trust tier 2
  • community
LLM review pending
Source check pending

Checking that the SKILL.md file is still in the repository.

Quick cheat sheet for SudoLang syntax. Use when writing or reading SudoLang pseudocode, interfaces, constraints, or function definitions.

Install

npx vskill@latest install paralleldrive/aidd/aidd-sudolang-syntax

SKILL.md

SudoLang Syntax

A quick cheat sheet for SudoLang syntax.

Interfaces

DisplayTheme { mode: "light" | "dark" name: String parameters{} // each theme can have different sets of parameters permissions[] }

UserPreferences { displayTheme }

User { id: String displayName preferences }

Constraints

constraint: can be specified inline or in block form

Constraints { A constraint Another constraint }

Semantic Pattern Matching

Map conditions to results by meaning:

(pattern) => result

e.g.

(logic is deterministic) => CLI tool, compiled Bun bundle
(logic requires judgment) => AI prompt

Patterns mix naturally into Constraints blocks:

// Real SudoLang agent skill constraints:
Constraints {
Prefer natural language in markdown format
(logic is deterministic) => CLI tool, compiled Bun bundle
(logic requires judgment) => AI prompt
}

Function Definitions

// You can define an inferred function with the fn or function keywords: fn foo(); function bar();

// You can also define them with function bodies: fn foo() { Constraints { a constraint }

for each (foo) bar() while (!done) work() }

// Functions with blocks can omit the fn or function keyword: anotherFunction() { require user to be signed in }

Function Modifiers

function simple():modifier = value

function complex():nestedModifier={key: "value"}

// You can shape function behavior at call time. doSomethingMultiLine():{ // we can freely mix variable assignments and constraints: format = numbered markdown list lineLength = concise this is a constraint this is another constraint }

Object Literals

updateUser({ id: "123", name: "Pup" })

Template Strings

"foo $bar" foo $bar

Note: Avoid single quotes for strings, because they are used as apostrophes in natural language, and they can break the syntax hightlighting badly.

// nested template strings: ["foo $bar"]

// nested template strings with objects: { name: "Hello, $name" }

Arrays and Objects

// arrays [1, 2, 3]

// nested arrays [ { foo: "bar" }, [123] ]

Comments

// a comment

/ a block comment / fn bar(/ a block comment in parameter position /) { // a function-nested comment a constraint / function-nested block comments (not recommended due to token consumption, but available if you really need it) / "return $template" // end of line comment }

Operators

Note: Most operators don't usually get special syntax highlighting, but they are still important to include.

// Logical Operators isAdult = age >= 18 canVote = isAdult && isCitizen canDrink = isAdult || hasParentalConsent uniqueFeature = hasFeatureA xor hasFeatureB isUnavailable = !inStock

// Complex logical expression isEligible = (age >= 21) && (hasValidID) && ((hasCreditCard) || (hasCash)) && !(isBlacklisted)

// Math Operators sum = a + b difference = x - y product = length * width quotient = total / count power = base ^ exponent remainder = 17 % 5

// Complex math expression result = ((10 + 5) * 3 - (20 / 4)) ^ 2 % 7

// Set Operators commonFruits = tropicalFruits intersection localFruits allFruits = tropicalFruits union localFruits

// Note: The cup and cap operators are deprecated in favor of union and intersection due to instability in Claude 3.5.

// Combining different operators finalScore = (baseScore + bonusPoints) * difficultyMultiplier isWinner = (finalScore > highScore) && !isDisqualified

// Assignment with operation counter = 0 counter += 1 // Increment total -= discount // Decrement price *= taxRate // Multiply and assign share /= numberOfPeople // Divide and assign

// Function nesting fn foo() { counter = 0 counter += 1 // Increment total -= discount // Decrement price *= taxRate // Multiply and assign share /= numberOfPeople // Divide and assign }

// Comparison Operators isEqual = a == b isNotEqual = x != y isGreater = score > threshold isLessOrEqual = quantity <= maxLimit

// Ternary if/else access = if (age >= 18 && isMember) "granted" else "denied"

// Pipe operator for function composition processedData = rawData |> normalize |> filter |> sort

Disallowed Keywords

Should generate a warning for disallowed keywords.

class Foo extends Bar { constructor() { super() } }

Security

  • Security scanPassed, 100 of 100Pattern checks on the skill's files.
  • Model reviewNot runA model review is scheduled for the next rescan.

Quality evaluation

  • Task evaluationNot runNo evaluation yet. Run one in Skill Studio.

Source

Popularity

Repository stars
374
Repository forks
30
Repository npm downloads, 7 days
945
7-day trend score
46

Stars and forks are for the whole GitHub repository, not this skill alone. Downloads are for the repository's npm package. Refreshed 28 Apr 2026, 6 months ago.

Works with

Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.

  • Claude Code
  • Cursor
  • GitHub Copilot
  • Windsurf
  • Codex
  • Gemini CLI
  • Cline
  • Amp
  • Roo Code
  • Goose
  • Continue
  • Kilo Code
  • Junie
  • Trae
  • OpenHands
  • Qwen Code
  • AI Agent
  • Tabnine Chat
  • Sourcegraph Cody
  • Amazon Q
  • Firebase Genkit
  • Sweep
  • Devin
  • Phind
  • Mentat
  • Claude Desktop
  • Aider
  • GPT Pilot
  • Plandex
  • bolt.new
  • v0
  • Replit Agent
  • Anse
  • TypingMind
  • BetterChatGPT
  • LibreChat
  • Warp AI
  • Pieces
  • Fig AI
Embed badge
vskill VERIFIED badge
[![vskill VERIFIED](https://verified-skill.com/api/v1/skills/paralleldrive/aidd/aidd-sudolang-syntax/badge)](https://verified-skill.com/skills/paralleldrive/aidd/aidd-sudolang-syntax)

Something wrong with this skill or its page? Tell us.