Skip to content

0xAhmadYousuf/TapLang

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

7 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

TapLang Logo

TapLang - Keyboard Action Language

πŸ€– 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.

Version Language AI Ready License

🎯 Overview

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]

πŸ“ Project Structure

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

πŸš€ Getting Started

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

οΏ½ Documentation

🎯 Use Cases

πŸ€– AI Agent / Web Terminal Integration ⭐

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

Automation / Macro Systems

  • Custom shortcuts mapped to complex commands
  • Text expansion for code snippets and repetitive inputs
  • Game macros and multi-key combinations

Assistive Technology

  • Convert limited input devices into rich commands
  • Alternative input methods for accessibility
  • Single switches and pedals triggering action sequences

Custom Human-Computer Interaction

  • Gesture keyboards with simultaneous key presses
  • Music/performance tools triggering notes and effects
  • Experimental interfaces for robots, drones, visualizations

Security / Steganography

  • Encoded input with encrypted commands
  • Hidden commands through specific sequences
  • Secret function activation

Learning / Training Tools

  • Typing tutors with sequence tracking
  • Morse code-style input practice
  • Personalized training exercises

Communication / Scripting

  • Domain-specific language for structured commands
  • Remote IoT device control over networks
  • Cross-platform consistency across systems

✨ Key Features

  • πŸ€– AI-First Design - Built specifically for AI agents and automation
  • 🚧 Concept Barriers - Super simple text handling with TYPE[text] syntax and FORMAT[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

πŸ“œ License

See LICENSE file for details.

πŸ“¦ Distribution & Implementation

πŸš€ Planned Releases

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.

🀝 Contributing

  1. Check the specification in TapLang/SPECIFICATION.md
  2. Follow the existing code style (simple, functional)
  3. Add tests for new features
  4. Update documentation

🌟 Part of CTF-ORION Project

TapLang concept originated from the CTF-ORION project:


TapLang: Making keyboard actions simple, portable, and AI-ready.

About

A DSL (Domain Specific Language) do-tool style syntax, but adapted as a Transfer-friendly mini language

Topics

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages