π€ Primarily designed for AI agents and automation systems
A simple, lightweight language for representing keyboard actions. Perfect for AI agents, web terminals, and cross-platform automation.
TapLang allows you to describe keyboard interactions as simple text commands:
TYPE[Hello World]
PRESS[CTRL] CLICK[C] RELEASE[CTRL]
SET_WAIT[RANDOM[100,500]] WAIT[] WAIT[] TYPE[Done]
TapLang/
βββ assets/ # Logo and visual assets
βββ LICENSE # Project license
βββ README.md # This file
βββ TapLang/ # Language specification & concept
β βββ TapLang.json # JSON specification (reference)
β βββ SPECIFICATION.md # Technical specification
β βββ CONCEPT.md # Design philosophy & background
βββ Python/ # Python implementation
βββ TapLang/ # Python package
β βββ __init__.py # Package exports
β βββ data.py # Specification data (authoritative)
β βββ parser.py # Code parsing
β βββ validator.py # Validation logic
β βββ interpreter.py # Execution engine
βββ test.py # Interactive test tool
βββ examples.py # Usage examples
βββ README.md # Complete usage guide
TapLang makes keyboard automation simple and AI-friendly:
TYPE[`Hello AI Agent`] # Simple backticks!
PRESS[CTRL] CLICK[C] RELEASE[CTRL] # Copy
TYPE[`Dynamic: FORMAT[RANDOM[Alice,Bob,Charlie]]`] # Random content
SET_WAIT[RANDOM[100,500]] WAIT[] # Random timing
π For detailed usage and examples, see the Python Implementation
- Python Usage Guide - Complete implementation and examples
- Language Specification - Technical specification
- Original Concept - Design philosophy and background
Primary Target: AI Systems
- Keyboard as AI Input Layer: Bridge between physical keyboard and AI agents
- Web Terminal Sync: Real-time key sequences transmitted to web terminals
- Enhanced Automation: AI reacts to sequences, suggests completions, executes workflows
- Remote Control: Multiple devices share same keyboard language for AI control
- Custom shortcuts mapped to complex commands
- Text expansion for code snippets and repetitive inputs
- Game macros and multi-key combinations
- Convert limited input devices into rich commands
- Alternative input methods for accessibility
- Single switches and pedals triggering action sequences
- Gesture keyboards with simultaneous key presses
- Music/performance tools triggering notes and effects
- Experimental interfaces for robots, drones, visualizations
- Encoded input with encrypted commands
- Hidden commands through specific sequences
- Secret function activation
- Typing tutors with sequence tracking
- Morse code-style input practice
- Personalized training exercises
- Domain-specific language for structured commands
- Remote IoT device control over networks
- Cross-platform consistency across systems
- π€ AI-First Design - Built specifically for AI agents and automation
- π§ Concept Barriers - Super simple text handling with
TYPE[text]syntax andFORMAT[RANDOM[]]support - π Cross-Platform - Works consistently across operating systems
- β‘ Smart Validation - Catches errors like unfinished press operations and invalid keys
- π² Dynamic Timing - Fixed delays or human-like random timing
- π Simple Syntax - Easy to read, write, and parse
See LICENSE file for details.
We're looking for contributors to help implement TapLang across platforms:
- π Python PyPI Package - Coming soon to pip install
- β‘ C/C++ Implementation - High-performance native library
- π Web/JavaScript - Browser and Node.js support
Volunteers welcome! Help us bring TapLang to more platforms and programming languages.
- Check the specification in
TapLang/SPECIFICATION.md - Follow the existing code style (simple, functional)
- Add tests for new features
- Update documentation
TapLang concept originated from the CTF-ORION project:
- π Website: ctforion.com
- π GitHub: github.com/ctforion
TapLang: Making keyboard actions simple, portable, and AI-ready.