Hacker News

Subscribe to Hacker News feed
Hacker News RSS
Updated: 50 min 50 sec ago

Show HN: DoScript – DSL for file automation with natural language syntax

Mon, 02/16/2026 - 3:37am

I built DoScript, a domain-specific language for file automation. The goal: make scripts readable by anyone. Design Goal Instead of: bashfind . -type f -mtime +30 -exec rm {} \; Write: for_each file_in here if_older_than {file_name} 30 days delete file {file_path} end_if end_for Trade power for clarity. Optimize for maintenance over terseness. Key Design Decisions 1. Natural Language Keywords make folder not mkdir, copy file not cp. Self-documenting. 2. Implicit Metadata When iterating files, auto-inject: {file_name}, {file_path}, {file_size}, {file_modified}, {file_is_old_days} for_each file_in "Documents" say "{file_name} is {file_size} bytes" end_for 3. Built-in Time Handling if_older_than {file_name} 30 days make folder "backup_{today}" No date arithmetic needed. 4. Expression Evaluation Function-based for simplicity: if greater_than {file_size} 1000000 if and(equals({type}, "pdf"), greater_than({size}, 10000)) Intentionally awkward for complex logic - signals you should use Python. Implementation

Python interpreter (~2000 LOC) Recursive descent parser Context-aware error reporting Custom exception types with file/line info

Visual Component Built a browser-based node editor (single HTML file, 1200 LOC). Drag boxes, wire them, generate DoScript code. Why? Different learning styles, workflow visualization, non-programmer accessibility. What Worked

Natural syntax is immediately understandable Metadata injection removes boilerplate Time handling makes common cases trivial Visual IDE differentiates from text-only

What Didn't

Complex conditionals get awkward fast No user-defined functions (only macros) Limited data structures Performance not optimized

The Challenge Built for non-programmers. But they don't hang out on dev forums. Developers say "just use Python" - which misses the point. How do you market dev tools to non-developers? Technical Transparency I designed syntax and architecture. Most Python implementation was AI-assisted (Claude, Copilot). Focus on design, use tools for implementation. Open Questions

When does a DSL become too limited? How to market to non-developers? Type system worth the complexity? Should DSLs provide escape hatches to host language?

GitHub: https://github.com/TheServer-lab/DoScript v0.6.5, includes interpreter, visual IDE, VS Code extension, examples. Built because bash was too cryptic for my friend to organize files. Turns out lots of people have this problem. Would love feedback from people who've built DSLs or struggled with similar trade-offs.

Comments URL: https://news.ycombinator.com/item?id=47032476

Points: 1

# Comments: 0

Categories: Hacker News

Phantom-WG

Mon, 02/16/2026 - 3:37am

Phantom-WG is a modular tool for setting up and managing WireGuard VPN infrastructure on your own server. Beyond basic VPN management, it provides censorship-resistant connections, multi-layer encryption, and advanced privacy scenarios. https://github.com/ARAS-Workspace/phantom-wg

Comments URL: https://news.ycombinator.com/item?id=47032474

Points: 1

# Comments: 0

Categories: Hacker News

Qwen 3.5 397B and Qwen 3.5 Plus released

Mon, 02/16/2026 - 3:34am

Article URL: https://chat.qwen.ai/

Comments URL: https://news.ycombinator.com/item?id=47032452

Points: 1

# Comments: 1

Categories: Hacker News

A isometric city builder in JavaScript

Mon, 02/16/2026 - 3:33am
Categories: Hacker News

Show HN: A Toby alternative with vertical tabs and no forced new tab override

Mon, 02/16/2026 - 3:28am

Hi HN,

I built OrgaNice after running into limitations with existing tab managers, especially forced new tab overrides, feature limits, and workflows that didn’t scale well with large numbers of tabs.

Here’s what it currently offers:

Unlimited nested folders, collections, and workspaces

Session history

Vertical tabs via the side panel

Optional new tab override (you can enable or disable it)

JSON export and import

Import from your browser bookmarks

I’m actively improving it and would really appreciate feedback.

Thanks

Comments URL: https://news.ycombinator.com/item?id=47032393

Points: 1

# Comments: 0

Categories: Hacker News

A Tree of AI Model Names

Mon, 02/16/2026 - 3:27am

Article URL: https://sajarin.com/blog/modeltree/

Comments URL: https://news.ycombinator.com/item?id=47032390

Points: 1

# Comments: 0

Categories: Hacker News

Just in Time Software

Mon, 02/16/2026 - 2:47am
Categories: Hacker News

Show HN: Pg-workflows – Lightweight workflows for Node.js using Postgres

Mon, 02/16/2026 - 2:40am

Hey HN,

I'm a big fan of the Postgres ecosystem and the reliability it brings to the TS stack. More often than not, the answer to "should I add another piece of infrastructure?" is "Postgres can already do that."

I’ve been a long-time user of https://timgit.github.io/pg-boss, but I wanted to take the developer experience (DX) a step further for multi-step processes, especially for AI workflows.

I built pg-workflows to provide a fluent API for defining durable background logic. Instead of manually stitching together disparate jobs, you can define your business logic as a clean, type-safe chain.

Comments URL: https://news.ycombinator.com/item?id=47032062

Points: 1

# Comments: 0

Categories: Hacker News

Show HN: Hive: OS Bluesky for Openclaws

Mon, 02/16/2026 - 2:37am

I’ve been experimenting with a simple idea: what if bots had identities and could interact with each other like users?

I built Hive, a lightweight ATProto-native network where every account is an agent. - Live: https://hive.boats - Code: https://github.com/embers-workshop/hive

Bots get: - DID identity - posts/replies/mentions - DMs - a shared directory for discovery

I also built Beekit, a small CLI/SDK to get an OpenClaw bot onto Hive quickly: - https://github.com/embers-workshop/hive-beekit

It handles scaffolding, login, polling mentions, and registering the bot.

The goal isn’t “Twitter for bots” so much as a social layer for agents: identity, discovery, and coordination using ATProto primitives.

Most of this was built by my OpenClaw agent (“Ember”) using Claude Code — I mostly guided architecture and direction.

Curious if others working on agents think a shared social/discovery layer like this is useful, or if people are solving this a different way.

To get started, first get your openclaw a bsky.app account, and then point it here: https://hive.boats/skill.md

Comments URL: https://news.ycombinator.com/item?id=47032044

Points: 1

# Comments: 0

Categories: Hacker News

Pages