AetherScript:值得信赖的 AI 辅助开发
1 分•作者: papabili•9 个月前
AetherScript:值得信赖的 AI 辅助开发
厌倦了 AI 代码生成的“魔法”和不可预测性?你喜欢 LLM 的强大功能,但讨厌混乱的差异、失控以及污染你干净代码库的“幻觉”代码吗?
如果我们能像与人类开发者协作一样与 AI 协作,会怎么样?通过明确的合同、明确的审查以及保证人为监督的流程?
这就是 AetherScript 的愿景。
AetherScript 引入了一种全新的、结构化的、人-AI 协作工作流程,它基于一个简单而强大的理念:将人的意图与 AI 的实现分离。
工作原理:验收模型
你定义意图(.as 文件):在标准的 TypeScript 文件(.as)中,你编写高级架构、接口和方法签名。你定义“是什么”。对于你想要委托的部分,你留一个简单的占位符。
```typescript
// 你在 user.service.as 中编写
export class UserService {
public async create(data: UserCreateInput): Promise<User> {
// AI,请实现用户创建逻辑。
return "${this.create(data)}";
}
}
```
AI 填充实现(.asc 文件):AetherScript 引擎在单独的、配套的文件(.asc)中生成相应的实现。此文件充当 AI 工作的沙盒暂存区。它是“如何做”。
你审查并接受(aesc merge):在明确批准之前,AI 的代码永远不会触及你的主源代码。你可以在干净、集中的差异视图中审查实现。当你满意时,一个命令 aesc merge 会无缝地集成代码,替换占位符。这就像你的 AI 伙伴发出的一个拉取请求。
为什么选择 AetherScript?
完全控制和信任:不再有不可预测的代码神奇地出现在你的文件中。你永远是最终的把关人。
干净的 Git 历史:合并是原子的和有意义的,显示了从意图到完成实现的清晰过渡。
深度工具链集成:从头开始设计,考虑了编译器、用于无缝开发体验的 Bun 运行时插件以及强大的 VS Code 扩展。
结构化的理念:AetherScript 不仅仅是一个工具;它是一种完整的、使 AI 成为专业软件工程中真正、可靠的合作伙伴的方法。
我们相信这是 AI 辅助开发的未来——结构化、可预测,并且始终由开发者主导。
感兴趣吗?我们在设计文档中阐述了整个愿景和技术架构。
深入了解并在 GitHub 上加入讨论:
https://github.com/Pabears/AetherScript/tree/main
我们欢迎你的反馈、想法和贡献!
查看原文
AetherScript: AI-Assisted Development That You Can Trust
Tired of the "magic" and unpredictability of AI code generation? Do you love the power of LLMs but hate the messy diffs, the loss of control, and the "hallucinated" code that pollutes your pristine codebase?<p>What if we could collaborate with AI the same way we collaborate with human developers? With clear contracts, explicit reviews, and a process that guarantees human oversight?<p>This is the vision behind AetherScript.<p>AetherScript introduces a new, structured workflow for human-AI collaboration, built on a simple yet powerful philosophy: separate human intent from AI implementation.<p>How It Works: The Acceptance Model
You Define the Intent (.as files): In standard TypeScript files (.as), you write the high-level architecture, interfaces, and method signatures. You define the "what." For the parts you want to delegate, you leave a simple placeholder.<p>// You write this in user.service.as
export class UserService {
public async create(data: UserCreateInput): Promise<User> {
// AI, please implement the user creation logic.
return "${this.create(data)}";
}
}<p>AI Fills the Implementation (.asc files): The AetherScript engine generates the corresponding implementation in a separate, companion file (.asc). This file acts as a sandboxed staging area for the AI's work. It's the "how."<p>You Review and Accept (aesc merge): The AI's code never touches your main source until you explicitly approve it. You can review the implementation in a clean, focused diff view. When you're satisfied, a single command, aesc merge, seamlessly integrates the code, replacing the placeholder. It's like a pull request from your AI partner.<p>Why AetherScript?
Full Control & Trust: No more unpredictable code magically appearing in your files. You are always the final gatekeeper.<p>Clean Git History: Merges are atomic and meaningful, showing a clear transition from an intent to a completed implementation.<p>Deep Toolchain Integration: Designed from the ground up with a compiler, a Bun runtime plugin for a seamless dev experience, and a powerful VS Code extension in mind.<p>A Structured Philosophy: AetherScript isn't just a tool; it's a complete methodology for making AI a true, reliable partner in professional software engineering.<p>We believe this is the future of AI-assisted development—structured, predictable, and always developer-led.<p>Intrigued? We've laid out the entire vision and technical architecture in our design document.<p>Dive deeper and join the conversation on GitHub:
https://github.com/Pabears/AetherScript/tree/main
We welcome your feedback, ideas, and contributions!