BLA
BLA는 오픈소스 Blue Defense MCP와 CLI로, 소프트웨어 자산을 자동 AI 리버스 엔지니어링으로부터 보호합니다
아직 감지된 업데이트가 없습니다. GitHub 릴리스가 나오면 여기에 보입니다.
개인 계정의 공개 저장소 소유자는 GitHub로 로그인해 운영자를 확인하고 소개를 직접 관리할 수 있습니다. 관리자 승인은 필요하지 않습니다.
로그인한 뒤 확인 파일을 만들어 이 저장소의 기본 브랜치에 30분 안에 커밋해 주세요. 다른 브랜치나 포크의 파일은 인정하지 않습니다. 파일을 올린 뒤 아래에서 확인하면 관리자 승인 없이 관리할 수 있습니다. 자격을 유지하려면 파일을 남겨 두세요.
로그인이 필요하면 로그인 화면으로 이동합니다. 로그인 후 이곳으로 돌아와 원하는 확인 버튼을 다시 눌러 주세요.
프로젝트 폴더에서 /nomorevibe verify를 실행하면 소유권을 확인하고 소개를 직접 관리할 수 있습니다.
1분 만에 확인하기Privacy-first URL cleaner, built entirely with ChatGPT Codex. Remove ad and analytics trackers without breaking useful link parameters.
저장소 README에서 가져옴
README 전체를 불러오는 중입니다.
README 전문 보기 ↗Remove common tracking parameters from URLs without stripping parameters that a page actually needs.
Built entirely with Cursor, Claude Code and ChatGPT Codex.
Open the live tool · Browse the source · View the tests
Many shared links contain analytics and advertising parameters that are useful to marketers but unnecessary for the person opening the link.
URL Cleaner removes known tracking parameters while taking a conservative approach:
It removes only recognized trackers. Unknown parameters are kept.
That means search terms, product IDs, page numbers, language settings, invite codes, authentication parameters, and other page-specific values are preserved unless they are explicitly listed as trackers.
utm_*, hsa_*, mtm_*, piwik_*, and _ga_*pk_campaign and pk_kwd while preserving unrelated names such as pk_livesi only from YouTube and Spotify linksv, t, and listgoogle.co.uk), Facebook, Instagram l.instagram.com, Outlook Safe Links, YouTube, LinkedIn /safety/go and /redir/redirect, and href.li redirect wrappers locally, then cleans the destinationThe mcp/ folder ships an official Model Context Protocol server that wraps the repo engine (cleanUrl, inspectUrl, batch clean, explanations, capabilities). Use stdio for local IDE and agent configs, or HTTP on 127.0.0.1 with a bearer token for tools that need a remote URL on your own machine.
It is not deployed with the static site on Vercel. Setup, tools, auth, and client examples: mcp/README.md.
Choose URL Cleaner when you want a link-cleaning tool that stays simple, transparent, and privacy-friendly:
Before:
https://www.youtube.com/watch?v=abc123&utm_source=newsletter&gclid=example#comments
After:
https://www.youtube.com/watch?v=abc123#comments
The YouTube video ID and page fragment stay intact while the tracking parameters are removed.
Before:
https://www.google.com/url?q=https%3A%2F%2Fexample.com%2Fpage%3Futm_source%3Dnews%26id%3D9&sa=D
After:
https://example.com/page?id=9
URL Cleaner extracts the destination from the Google wrapper without opening it or making a network request, removes utm_source, keeps id=9, and displays a Redirect unwrapped notice naming the wrapper host.
The same local behavior supports Google country domains and search-result links that use url=, Facebook /l.php, Instagram l.instagram.com, Outlook Safe Links, YouTube /redirect, LinkedIn /safety/go and /redir/redirect, and href.li. Nested known wrappers are handled up to five levels deep, including destinations that were percent-encoded twice. Cleaning, URL X-Ray, and the tracking fingerprint share one unwrap engine, so they always report the same layers.
https://www.youtube.com/watch?v=abc123&si=SHAREID&t=30s
→ https://www.youtube.com/watch?v=abc123&t=30s
https://intranet.example/report?si=42&year=2024
→ https://intranet.example/report?si=42&year=2024
The si parameter is removed from YouTube and Spotify sharing links but preserved on unrelated sites. Matomo names such as pk_campaign and pk_kwd are removed, while unrelated names such as pk_live remain.
Inputs using javascript:, data:, file:, or ftp: are rejected with a clear HTTP/HTTPS validation message.
Known shortened links receive an informational notice. URL Cleaner cleans the visible short URL but does not follow its redirect, make a network request, or claim to inspect the hidden destination.
Open andromeda-url-cleaner.vercel.app, paste a URL, and select Clean URL.
The app does not upload the URL anywhere. Copying and pasting use your browser's clipboard permission. See Privacy for how handoffs from the Shortcut and share target work.
A native Share Sheet extension would require a separate Xcode app. The project stays a lightweight static website instead.
You can get the same practical flow with an Apple Shortcut:
Share URL → open URL Cleaner → clean locally → copy/share the result
https://andromeda-url-cleaner.vercel.app/#url=[Encoded URL]
Now share a URL from Safari or another app, choose the shortcut, and URL Cleaner will open with the URL loaded and cleaned automatically. Tap Share to open the system Share Sheet, or tap Copy.
#, which browsers never send to a server, so the link stays on your device. The Android share target POSTs into the service worker, which redirects to /#url= without a network request. Older Shortcuts that use ?url= still work, but that form sends the link to the web host in the page request; switch them to /#url=.The site already accepts /#url= handoffs. These two extras send the current page there, or clean it in the browser, without a store listing.
Create a bookmark whose URL is this code. On a desktop browser you can also drag that bookmark onto the bookmarks bar. On iPhone Safari, add any bookmark, then edit its address to the code:
javascript:(()=>{window.open('https://andromeda-url-cleaner.vercel.app/#url='+encodeURIComponent(location.href),'_blank')})()
One tap opens URL Cleaner with the current page URL in the hash. No extra scripts and no tracking. The link is never sent as ?url=.
extension/ is a Manifest V3 add-on. It is not published to a store. Toolbar click cleans the current tab locally with cleanUrl(), copies the result, and shows what was removed. Permissions are only activeTab and clipboardWrite. The page URL is never fetched. extension/vendor/ is committed so you can load it unpacked without a build; CI checks those files still match extension/build.mjs.
chrome://extensions, turn on Developer mode, click Load unpacked, and choose the extension/ folder.http(s) page.chrome://, file:, and about:blank pages show Nothing to clean on this page. Shortened links are cleaned in place and warned about; they are not followed.
The app needs no build step and no package installation.
git clone https://github.com/heyandromeda/url-cleaner.git
cd url-cleaner
python3 -m http.server 8000
Then open http://localhost:8000.
Using a local web server is recommended because browser module imports may be restricted when opening index.html directly as a file:// URL.
The project uses Node's built-in test runner:
npm test
The test suite covers:
sipk_* names#url= and ?url= handoff parsingdist/ copy byte-for-byte, since Vercel serves dist/si cleanup, invalid input, long URLs, opaque shorteners, and non-http(s) pagesGitHub Actions runs npm test on every push to main and on pull requests.
| File | Purpose |
|---|---|
| index.html | Runnable app page |
| styles.css | Minimal styling |
| cleaner.js | URL-cleaning logic, tracker lists, inspection helpers, and batch processing |
| explanations.js | Local tracker explanations and tracker-of-the-day selection |
| tracker-profiles.js | Sourced educational profiles for Tracker of the Day |
| handoff.js | Share-target, hash handoff, and clipboard-permission helpers |
| app.js | Form, clipboard, settings, and copy interactions |
| manifest.webmanifest | Web app manifest and share target |
| sw.js | Service worker for installability and local share-target POST handoff (no caching, no network) |
| middleware.js | Vercel Routing Middleware: 303 share-target POSTs to / without reading the body |
| tests/ |
The tracker lists live in cleaner.js:
TRACKING_PARAMETERSTRACKING_PARAMETER_PREFIXESFor example, a family prefix of example_ would remove example_source and example_campaign.
Avoid adding broad names such as id, ref, source, or token: those can be required for a page to work. Add only parameters confirmed to be tracking-related. Broader names that are usually but not always tracking belong in AGGRESSIVE_PARAMETERS, which only applies when aggressive cleaning is switched on.
No tracker list can identify every parameter used by every website. This project intentionally favors preserving unknown parameters over making an aggressive guess that could break a link.
URL cleaning happens locally in your browser. URLs and clipboard contents are not uploaded or stored. Only six preferences are saved locally: whether to clean on paste, whether to auto-copy, whether aggressive cleaning and duplicate cleanup are on, whether the Tracker of the Day card is collapsed, and whether light or dark theme is selected. The app has no backend, accounts, analytics, database, or telemetry.
How a link reaches the app matters:
/#url=): the link is passed after the #. Browsers do not send that part to the server, so the host only sees a plain request for the page./#url=&text=&title= hash, so the shared fields never leave the device and an invalid url field can still fall back to a link in text or title. If the worker is not yet active (first launch or cleared storage), Vercel Routing Middleware responds 303 to / without reading the POST body, so the host never logs the shared link; the URL is dropped and you can paste or share again after install./#url=): same hash handoff as the Shortcut. The extension also cleans in the toolbar popup and never requests the page URL; it only asks for activeTab and clipboardWrite.?url= links: still work, but that form sends the link to the web host in the page request. Use /#url= or paste if you want to avoid that.The hosted site enforces this with security headers set in vercel.json. The Content Security Policy uses connect-src 'none', so the page cannot make network requests even if it tried, and only loads its own scripts and styles. It also sends Referrer-Policy: no-referrer, refuses to be framed, and disables camera, microphone, geolocation, payment, and USB access. The service worker exists for installability and to keep share-target POSTs on-device; it caches nothing and never fetches the shared URL.
This project is released under the MIT License.
You are free to:
The only requirement is to keep the copyright and license notice with copies or substantial portions of the software. The software is provided without warranty.
https%253A%252F%252F… is shown readable, without opening or fetching itref, source, src, campaign, partner, affiliate, clickid, and similar), marks each one as (aggressive), and is off by default because some sites need those namestag=a&tag=a), keeps repeats with different values (item=1&item=2), and is off by default so signed links stay untouched# in parameter values, and stacked redirect wrapperscheck this out: https://…!, dropping trailing punctuation and unmatched closing parentheses while keeping ones that belong to the URL, like Urchin_(software)#url= handoff into a tab that is already open, without a page reloadmcp/): zero-dependency stdio/HTTP adapter so Grok Bots, Cursor, Claude Code, Codex, and other MCP clients can call the same cleaning engine locally (URLs are never fetched)#url= handoffAutomated tests (cleaning, batch, explanations, handoff, PWA, favicon, production URL, dist/ sync, extension popup) |
| extension/ | Unpacked MV3 add-on; imports cleanUrl() via a vendor copy of the engine |
| vercel.json | Vercel config: serves dist/ and sets the security headers |
| .github/workflows/test.yml | Runs npm test in CI |
| LICENSE | MIT License |
| dist/ | Static-site copy used by the hosted deployment |