惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

G
Google Developers Blog
D
Docker
Stack Overflow Blog
Stack Overflow Blog
GbyAI
GbyAI
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
Google DeepMind News
Google DeepMind News
M
MIT News - Artificial intelligence
H
Help Net Security
T
Tailwind CSS Blog
Engineering at Meta
Engineering at Meta
L
LangChain Blog
MongoDB | Blog
MongoDB | Blog
腾讯CDC
H
Hackread – Cybersecurity News, Data Breaches, AI and More
S
SegmentFault 最新的问题
博客园 - 司徒正美
C
Check Point Blog
B
Blog
Y
Y Combinator Blog
Microsoft Azure Blog
Microsoft Azure Blog
P
Proofpoint News Feed
F
Fortinet All Blogs
美团技术团队
D
DataBreaches.Net

DEV Community

Authentication Security Deep Dive: From Brute Force to Salted Hashing (With Java Examples) Why AI Systems Don’t Fail — They Drift Spilling beans for how i learn for exam😁"Reinforcement Learning Cheat Sheet" I Replaced Chrome with Safari for AI Browser Automation. Here's What Broke (and What Finally Worked) How Python Borrows Other People's Work The $40 Architecture: Processing 1 Billion API Requests with 99.99% Uptime Vibe Coding: A Workflow Guide (From Zero to SaaS) Most webhook security guides protect the wrong side. The scary part is delivery. Headless CMS for TanStack Start: Build a Blog with Cosmic EU Age Verification App "Hacked in 2 Minutes" — What Actually Happened Comfy Cloud’s delete function does not actually remove files Running AI Models on GPU Cloud Servers: A Beginner Guide Event-driven media intelligence with AWS Step Functions and Bedrock I scored 500 AI prompts across 8 quality dimensions — here's what broke How to Call Google Gemini API from Next.js (Free Tier, No Backend Needed) The Portal Protocol: Reclaiming Human Connection in the Age of AI How to Fix Your Team's Scattered Knowledge Problem With a Self-Hosted Forum Intro to tc Cloud Functors: A Graph-First Mental Model for the Modern Cloud Designing Multi-Tenant Backends With Both Ownership and Team Access I Built a Neumorphic CSS Library with 77+ Components — Here's What I Learned PostgreSQL Performance Optimization: Why Connection Pooling Is Critical at Scale Cómo construí un SaaS multi-rubro para gestionar expensas en Argentina con FastAPI + Vue 3 🚀 I Built an Ethical Hacking Scanner Tool – Open Source Project I Replaced /usage and /context in Claude Code With a Single Statusline A Pythonic Way to Handle Emails (IMAP/SMTP) with Auto-Discovery and AI-Ready Design I Collected 8.9 Million Polymarket Price Points — Here's What I Found About How Markets Really Move EcoTrack AI — Carbon Footprint Tracker & Dashboard Everyone's Using AI. No One Agrees How. 5 self-hosted ebook managers worth trying in 2026 Building Your First AI Agent with LangChain: From Chatbot to Autonomous Assistant
Why I made Adal CLI Open Source
Yuriy · 2026-06-24 · via DEV Community

When you build an app that runs on someone else’s machine, trust becomes a very practical issue.

It is not just about branding, positioning, or saying the right things on a landing page. The user is allowing your software to run in their local environment. Depending on what the app does, that environment may include files, terminal commands, configuration, credentials, or work projects.

So the question becomes simple: how can a user know that the app is doing only what it is supposed to do?

For Adal CLI, I decided that the answer should not be “just trust me.”

It should be verifiable.

Local apps need a different level of trust

A web app usually runs on infrastructure controlled by the product team. A local app is different. It runs directly on the user’s device.

That changes the trust model.

If a CLI tool reads files, sends requests, modifies configuration, or interacts with local projects, users have every right to ask:

  • What exactly does it read?
  • What does it send over the network?
  • Does it collect anything unnecessary?
  • Can I build it myself instead of downloading a binary?
  • What happens if the project stops being maintained?

These are fair questions. And for developer tools, they are especially important.

Open Source makes trust verifiable

This is one of the main reasons I made Adal CLI open source.

Open source does not magically make a project secure or trustworthy. But it changes the relationship between the developer and the user.

Instead of asking people to believe a claim, it gives them a way to verify it.

Anyone can inspect the code and see what the app actually does. If someone does not want to use a prebuilt binary, they can build the project from source. If a developer wants to review how data is handled, they can do that. If someone finds a problem, they can open an issue or submit a pull request.

That possibility matters, even if most users never read the source code themselves.

It also makes development more transparent

Another benefit of open source is that people can see how the project evolves.

They can look at the changelog, commits, issues, and pull requests. They can see which bugs were fixed, which features were added, and how decisions were made over time.

For me, that transparency is important. A local tool should not feel like a black box.

This is especially true for CLI tools, because they often operate close to the developer’s actual work: repositories, config files, scripts, and terminal workflows.

Open Source is not a shortcut

There is one important caveat: publishing the code is not enough.

Open source is not a substitute for responsibility. A project can be open and still be confusing, insecure, poorly documented, or hard to build.

So if open source is meant to support trust, it should come with the basics:

  • clear documentation;
  • reproducible builds;
  • a changelog;
  • a license;
  • instructions for building from source;
  • an explanation of what data the app uses and why.

Without those things, “the code is open” can become more of a slogan than a real advantage.

Reducing dependency on one maintainer

There is another reason I care about this: sustainability.

If a tool becomes useful to people, they should not be completely dependent on one person maintaining it forever.

With an open source project, the community can fork it, fix critical issues, adapt it to specific needs, or continue development if the original maintainer slows down or moves on.

That does not guarantee anything, of course. But it gives the project a better chance to survive beyond a single author.

Final thought

Not every app has to be open source.

But if you are building something that runs locally, touches files, works with terminal commands, reads configuration, or handles sensitive data, openness can become one of the strongest arguments for trust.

Trust is hard to earn through promises.

It is much easier to build through transparency, verifiability, and respect for the user.

That is why Adal CLI is open source.