AI tooling / Linux automation / network infrastructure / practical security
I build small, sharp tools for messy real-world systems: agents, bootstraps, data pipelines, game tooling, and terminal-first workflows.
Currently building around agent tooling, proxy-aware bootstrap scripts, and practical Linux/macOS automation.
Website Terminal · Encrypted Message · GitHub · Hugging Face · Kaggle · Email
Install my personal agent skills globally:
npx skills add LIghtJUNction/lightjunction -gThe skills live under .agents/skills/ and are meant to capture my reusable workflows, preferences, and project-specific operating knowledge.
Non-CS background, but I learn by shipping. My projects usually start from a personal pain point: setting up fresh machines behind difficult networks, making agents easier to operate, automating data collection, or turning a rough script into something another person can run.
| Snapshot | |
|---|---|
| Education | Zhengzhou University, bachelor's degree |
| Looking for | Remote or hybrid engineering opportunities |
| Strongest signal | Debugging real systems, not just demos |
| Open-source focus | AstrBot ecosystem, agent tooling, Linux automation |
| Favorite game | Oxygen Not Included |
I am looking for work where this style is useful: strong ownership, fast iteration, comfort with Linux, and willingness to debug the real path instead of only the happy path.
My rule of thumb: if a tool only works on my machine, it is not finished yet. Good automation should explain the machine it sees, make conservative choices, and fail loudly before it damages anything.
| What I like building | Evidence |
|---|---|
| AI and agent tooling | AstrBot ecosystem work, MCP tools, automation surfaces, terminal workflows |
| Linux and bootstrap automation | macOS/Linux setup scripts, package-manager detection, proxy-aware installs |
| Network tools | daed/mihomo/Hiddify related setup, transparent proxy workflows, domestic-network fallbacks |
| Data and platform tooling | Python CLIs, API wrappers, collection pipelines, repeatable scripts |
| Security-minded utilities | OpenPGP contact flow, SSH key deployment, explicit permission boundaries |
| Simulation games | Oxygen Not Included, especially systems that reward automation and debugging |
| Signal | What it means in practice |
|---|---|
| Reproduce first | I chase the actual failing command, package, network, or runtime path. |
| Prefer explicit systems | Scripts print diagnostics, list assumptions, and ask before risky work. |
| Ship usable surfaces | CLIs, README commands, defaults, and error messages are part of the product. |
| Keep learning public | The repository is a workshop: rough ideas become documented tools over time. |
| Project | Why it matters |
|---|---|
| AstrBot ecosystem | Bot framework contribution and packaging/plugin work around real runtime behavior. |
| lightjunction | Personal terminal site, bootstrap scripts, encrypted contact flow, and reusable shell helpers. |
| OniMods | Oxygen Not Included tooling and MCP-style automation experiments for a complex simulation game. |
| douyin | Python package and CLI work around Douyin APIs, auth flows, and automation-heavy workflows. |
| MagicMihomo | Network configuration automation where reliability matters more than cleverness. |
Python · TypeScript · Shell/Bash · Linux · macOS · GitHub Actions · OpenPGP · MCP · Network Debugging · CLI Design
I keep this README closer to a compact portfolio than a sticker wall. The structure borrows from GitHub's profile README guidance and the community examples collected in awesome-github-profile-readme: clear identity first, selected proof second, dynamic activity only after the human-readable story.
- GitHub Docs: Managing your profile README
- Examples: abhisheknaiidu/awesome-github-profile-readme
| Joined | Repos | Followers | Following |
|---|---|---|---|
| 2022-06-06 (3yr 12mo) | 74 | 72 | 115 |
52 commits across 8 repositories
| Repository | Activity |
|---|---|
| lightjunction | ▓▓▓▓▓░░░░░ 24 |
| MagicMihomo | ▓▓░░░░░░░░ 9 |
| MagicNet | ▓░░░░░░░░░ 7 |
| OniMods | ▓░░░░░░░░░ 6 |
| MagicSingBox | ▓░░░░░░░░░ 2 |
| douyin | ▓░░░░░░░░░ 2 |
▓
╻
░ ╻
▓┃ ░ ╻
╻ ╻ ╻ ░░ ░ ░╻
░ ░░░░░ ░ ░▒ ░ ▒░░░ ▒ ░░░░
╻╻╻╻╻╻ ╻╻╽
░░░░░░ ╻╻░░▒
╻ ╻╻╻ ╻╻░░░░░░╻░░░▓▓
░ ╻░░░ ░░░░░░░░░░░░░▒╻
╻ ╻ ░╻ ░░░░ ░░░░░░░░░░░░░░░
╻ ░ ░ ╻ ╻░░╻ ░░░░╻ ╻ ░░░░░░░░░░░▒░░▓
░░░ ░░░░░░░ ░░░░░ ░░░░░ ░ ░░░░░░░░░░░░░░░▒
╻╻╻╻ ╻╻╻╻╻┃╻╻╻ ╻╻╻╻╻╻..............................
▓░░░╻░░░░░░░░░╻░░░░░░..............................
░░░░▒░░░░░░░░░░▒░░░░░...............................
░░░░░░░░░░▓▒░░░░░░░░░...............................
╻░░░░░░░░░░▒░░░░░░░░░░...............................
░░░░░░░░░░░▒▒░░░░░░░░░┃..............................
░░░░░░░░░░░░▒░░░▒░░░░░░..............................
MagicMihomo SHMagicNet-mihomo Shell / 10 stars / 0 forks / updated 2026-05-31 |
MagicNet SHA Magisk module that lets you use the mihomo kernel's TUN mode on Android. Built with KAM. Shell / 60 stars / 2 forks / updated 2026-05-31 |
|
Unite the knowledge of the world's top experts across every domain — to accelerate AI-driven scientific discovery. JavaScript / 0 stars / 0 forks / updated 2026-05-31 |
I'M LIghtJUNction Shell / 2 stars / 0 forks / updated 2026-05-31 |
MagicSingBox CODEMagicNet x sing-box Unknown / 0 stars / 0 forks / updated 2026-05-31 |
douyin PY抖音非官方sdk/命令行工具 Python / 2 stars / 0 forks / updated 2026-05-31 |
Last 7 days
2026-05-31
| Time | Repo | Commit |
|---|---|---|
| 23:38 | MagicMihomo | 0565284 ruleset: update-ruleset |
| 20:29 | MagicNet | 8fd9db0 fix: refresh action status after toggle |
| 20:26 | ResearchSkills | 5c3a726 chore: migrate skills to agents layout |
| 19:51 | lightjunction | 808efd0 Fix agent skills directory |
| 19:46 | lightjunction | 28ec9ef Add agent skills install note |
| 19:45 | MagicNet | 994f6e2 refactor: share release hook helpers |
| 19:21 | lightjunction | f03f527 Add AstrBot profile highlight |
| 19:05 | lightjunction | 882a08e Refine profile README structure |
| 18:36 | lightjunction | 68d26d0 Add profile platform links |
| 18:34 | lightjunction | 9394ffa Fix Pages attestation permission |
| 18:27 | lightjunction | 02fea97 Update GitHub Actions workflows |
| 18:26 | MagicNet | 751efd3 refactor: route runtime through kamfw |
These scripts are intentionally practical: they print diagnostics first, branch on the detected machine/network, and fail with explicit guidance when automation would be dishonest.
curl -sSL https://raw.githubusercontent.com/LIghtJUNction/lightjunction/main/bootstrap-linux.sh | bashOptional non-interactive example:
BOOTSTRAP_FEATURES=network-daed,fs-bees,shell,cn-desktop bash -c "$(curl -sSL https://raw.githubusercontent.com/LIghtJUNction/lightjunction/main/bootstrap-linux.sh)"It can install daed for transparent proxy workflows, configure CachyOS repositories on Arch-based systems, use .deb on Debian/Ubuntu, use .rpm on Fedora/RHEL/openSUSE, and expose optional modules for shell, filesystem, and desktop tooling.
curl -sSL https://raw.githubusercontent.com/LIghtJUNction/lightjunction/main/bootstrap-macbook.sh | bashRun as a normal Administrator user, not through sudo. Homebrew refuses root. On a fresh Mac, the script opens the Xcode Command Line Tools installer first because Homebrew needs Apple's git.
curl -sSL https://raw.githubusercontent.com/LIghtJUNction/lightjunction/main/deploy-ssh-keys.sh | bashSupports Termux and systemd Linux.
curl -sSL https://raw.githubusercontent.com/LIghtJUNction/lightjunction/main/basic.sh | bashModule map
| Module | Description |
|---|---|
env.sh |
Color variables, terminal detection, UTF-8/ASCII compatibility |
log.sh |
err, warn, ok, info, debug, line |
lib/str.sh |
trim, split, contains, replace, upper, lower, hash, uuid, rand |
lib/arr.sh |
join, contains, map, filter, sort, unique, sum, max, min |
lib/os.sh |
detect, is, arch, distro, has, require, ensure_dir, tmpdir |
lib/file.sh |
exists, is_file, is_dir, read, write, copy, move, size, md5 |
lib/net.sh |
check, download, http_get, http_post, public_ip, dns_lookup |
lib/prompt.sh |
yesno, input, password, menu, spinner, progress |
Use the website terminal to encrypt a message in the browser, or import my public key manually:
gpg --keyserver hkps://keyserver.ubuntu.com --recv-keys EB21B83AB1E982DF66F08387A67178405F7736FDFingerprint:
EB21B83AB1E982DF66F08387A67178405F7736FD
If my projects are useful to you, sponsorship is welcome: sponsor and support.




