# Script

A program file run by an interpreter.

This is one page of public article previews, not the complete archive. Follow Next page to continue. Summaries are not the original full articles.

## CodeSOD: An Odd Sort

DevFeed: [CodeSOD: An Odd Sort](<https://devfeed.tech/articles/codesod-an-odd-sort-28504.md>)

Original publisher: [Read original article](<https://thedailywtf.com/articles/an-odd-sort>)

Author: Remy Porter

Published: 2026-09-15T06:30:00Z

Content type: opinion

Language: en

Sources: [The Daily WTF](<https://devfeed.tech/sources/the-daily-wtf.md>)

Topics: [Code](<https://devfeed.tech/topics/code.md>), [PowerShell](<https://devfeed.tech/topics/powershell.md>), [Script](<https://devfeed.tech/topics/script.md>), [Sorting](<https://devfeed.tech/topics/sorting.md>)

Tags: [code](<https://devfeed.tech/tags/code.md>), [codesod](<https://devfeed.tech/tags/codesod.md>), [csv](<https://devfeed.tech/tags/csv.md>), [excel](<https://devfeed.tech/tags/excel.md>), [powershell](<https://devfeed.tech/tags/powershell.md>), [report](<https://devfeed.tech/tags/report.md>), [script](<https://devfeed.tech/tags/script.md>), [sorting](<https://devfeed.tech/tags/sorting.md>)

### AI overview

The article critiques a PowerShell script that queries Active Directory for users and their last logon times. It explains that the script's alphabet-based approach does not correctly sort names, performs unnecessary searches and property loading, and generates a CSV report for Excel despite these inefficiencies.

### Source excerpt

Let's say we wanted to query Active Directory and print out a report of all of our users, and their last logon time. That seems like a pretty normal task for a Powershell script. It'd probably be short and easy to read, at least if it were written by a normal person. Alice sends us one that wasn't. She's already done us a favor, as she writes: "Code cleaned up and indented for the whitespace-missing-impaired." ##################################### # lists accounts and selected attributes alphabetically ##################################### foreach( $letter in "a", "b", "c"......"z") { $strfilter = $letter + "*" $objdomain = New-object System.DirectoryServices.DirectoryEntry $objSearcher = New-object System.DirectoryServices.DirectorySearcher $objSearcher.SearchRoot = $objdomain $objSearcher.Filter = $strFilter $objSearcher.PropertiesToLoad.Add("name"); $colResults = $objSearcher.FindAll() foreach($result in $colResults) { $name = $result.Properties.Name $searcher = New-Object DirectoryServices.DirectorySearcher([adsi]"") $searcher.filter "(&(objectCategory=User)(sAMAccountName=$name))" $users = searcher.FindAll() foreach($user in $users) { Write-Output $user.properties.item("name") + "," + $user.properties.item("lastLogon") } } } This accomplishes sorting alphabetically by iterating across the alphabet. Which, I suspect, isn't going to actually get them in alphabetical order; it makes sure that albert and alice appear before bob, but doesn't enforce that albert must come before alice. In any case, we iterate across the alphabet, and then create a searcher that finds a*, then b*, etc. We explicitly tell the searcher that the only property we care about is the name field, so that we don't load unnecessary fields, like the ones we want to report on. We then iterate across the list of names, construct a new searcher, and search for the account with the username we fetched. That lets us get all of the fields we need, including the ones we aren't going to use. Now, we sea

## Koko, KMP Starter Kit -- Part 3: Publishing: Your App in the Stores

DevFeed: [Koko, KMP Starter Kit -- Part 3: Publishing: Your App in the Stores](<https://devfeed.tech/articles/koko-kmp-starter-kit-part-3-publishing-your-app-in-the-stores-22948.md>)

Original publisher: [Read original article](<https://proandroiddev.com/kmp-starter-kit-part-3-publishing-your-app-in-the-stores-fd64d3629c02?source=rss----c72404660798---4>)

Author: Mirzamehdi Karimov

Published: 2026-09-14T04:48:22Z

Content type: tutorial

Language: en

Sources: [ProAndroidDev - Medium](<https://devfeed.tech/sources/proandroiddev-medium.md>)

Topics: [App](<https://devfeed.tech/topics/app.md>), [Script](<https://devfeed.tech/topics/script.md>), [Development](<https://devfeed.tech/topics/development.md>), [configuration](<https://devfeed.tech/topics/configuration.md>), [GitHub](<https://devfeed.tech/topics/github.md>)

Tags: [app](<https://devfeed.tech/tags/app.md>), [compose-multiplatform](<https://devfeed.tech/tags/compose-multiplatform.md>), [configuration](<https://devfeed.tech/tags/configuration.md>), [development](<https://devfeed.tech/tags/development.md>), [github](<https://devfeed.tech/tags/github.md>), [how-to](<https://devfeed.tech/tags/how-to.md>), [kmp](<https://devfeed.tech/tags/kmp.md>), [kotlin](<https://devfeed.tech/tags/kotlin.md>), [kotlin-multiplatform](<https://devfeed.tech/tags/kotlin-multiplatform.md>), [script](<https://devfeed.tech/tags/script.md>)

### AI overview

This tutorial explains the publishing phase of the KMP Starter Kit, covering store accounts, app identifiers, configuration checks, privacy and terms URLs, support email, and publishing both apps from GitHub without a Mac. It also describes Google Play's closed-testing requirement for individual accounts.

### Source excerpt

Part 3 of 4: the third phase of the KMP contest starter kit. What to check when publishing, what the stores ask for, and how to publish both apps from GitHub without having a Mac. New here? Part 1 introduces the kit and gets your app running on your machine. Part 2 connects it to Firebase, sign in and a backend. You've finished the development part of your app, tested it, and it works. Screens done, data saved, maybe some services connected from part 2. Now comes the publishing part, and it can look complicated at first. But publishing is mostly a checklist, and the kit ships the checklist as a script: ./MobileApp/scripts/check_env.sh --phase publishing Or ask your AI coding assistant "is my app ready to publish?" and it runs this instead of guessing. It checks the things people forget: are the privacy policy and terms URLs real pages instead of placeholders? Is the contact email still support@example.com? Is your AI feature still calling providers directly with a key that would ship inside the binary? Each warning points at the fix. The rest of this post goes through the phase in order. A few steps involve waiting, so it's better to read it once first and start those early. Store accounts You need a developer account with each store. Google Play: $25, once. Apple: $99 per year. Start both today. Apple or Google can take days to verify a new account. Google Play has a testing rule: if you register as an individual (not a company), you can't publish to production until your app has run a closed test with at least 12 testers for 14 days, and then you apply for production access. Company accounts skip this, but need a registered business with a D-U-N-S number. For most first apps: register as an individual, collect 12 friends' emails now, and use those two weeks as your beta. App id and configuration Two things become permanent in this phase. The app id. Google Play ties your package name to the app on the first upload, and Apple ties the bundle id to the store record.

## Enable on-demand expertise with Agent Skills in Genkit Go

DevFeed: [Enable on-demand expertise with Agent Skills in Genkit Go](<https://devfeed.tech/articles/enable-on-demand-expertise-with-agent-skills-in-genkit-go-4209.md>)

Original publisher: [Read original article](<https://developers.googleblog.com/enable-on-demand-expertise-with-agent-skills-in-genkit-go/>)

Author: Daniela Petruzalek

Published: 2026-09-12T11:04:33.891311Z

Content type: tutorial

Language: en

Sources: [Google Developers Blog](<https://devfeed.tech/sources/google-developers-blog.md>)

Topics: [Agent Skills](<https://devfeed.tech/topics/agent-skills.md>), [Agent Harness](<https://devfeed.tech/topics/agent-harness.md>), [context window](<https://devfeed.tech/topics/context-window.md>), [Go](<https://devfeed.tech/topics/go.md>), [Script](<https://devfeed.tech/topics/script.md>)

Tags: [agent](<https://devfeed.tech/tags/agent.md>), [agent-skills](<https://devfeed.tech/tags/agent-skills.md>), [architecture](<https://devfeed.tech/tags/architecture.md>), [context-window](<https://devfeed.tech/tags/context-window.md>), [developers](<https://devfeed.tech/tags/developers.md>), [go](<https://devfeed.tech/tags/go.md>), [skills](<https://devfeed.tech/tags/skills.md>), [workflows](<https://devfeed.tech/tags/workflows.md>)

### AI overview

This article explains how Agent Skills in Genkit Go provide on-demand specialized expertise through progressive disclosure. Skills package instructions, references, and scripts in modular SKILL.md bundles, exposing only metadata initially and loading full content when a task requires it.

### Source excerpt

To prevent context window bloat and reduce token consumption, Genkit Go introduces Agent Skills based on a progressive disclosure architecture. Developers can package specialized instructions, scripts, and references into modular SKILL.md bundles where only the frontmatter metadata is initially exposed to the agent's system prompt. When a task matches the skill's description, Genkit's middleware dynamically loads the full instruction body and associated assets, ensuring the model accesses precise workflows exactly when needed.

## Where do a compliance dashboard's numbers actually come from?

DevFeed: [Where do a compliance dashboard's numbers actually come from?](<https://devfeed.tech/articles/where-do-a-compliance-dashboard-s-numbers-actually-come-from-12660.md>)

Original publisher: [Read original article](<https://tyk.io/blog/where-do-a-compliance-dashboards-numbers-actually-come-from/>)

Author: Hal Tyk's tutorial bot

Published: 2026-09-11T09:52:40Z

Content type: article

Language: en

Sources: [Tyk API Management](<https://devfeed.tech/sources/tyk-api-management.md>)

Topics: [dashboards](<https://devfeed.tech/topics/dashboards.md>), [Amazon API Gateway](<https://devfeed.tech/topics/amazon-api-gateway.md>), [Script](<https://devfeed.tech/topics/script.md>)

Tags: [ai-gateway](<https://devfeed.tech/tags/ai-gateway.md>), [ai-governance](<https://devfeed.tech/tags/ai-governance.md>), [ai-studio](<https://devfeed.tech/tags/ai-studio.md>), [api-management](<https://devfeed.tech/tags/api-management.md>), [api-platform-teams](<https://devfeed.tech/tags/api-platform-teams.md>), [complexity](<https://devfeed.tech/tags/complexity.md>), [compliance](<https://devfeed.tech/tags/compliance.md>), [llm-security](<https://devfeed.tech/tags/llm-security.md>), [ppi-redaction](<https://devfeed.tech/tags/ppi-redaction.md>), [tengo](<https://devfeed.tech/tags/tengo.md>), [tutorial](<https://devfeed.tech/tags/tutorial.md>)

### AI overview

The article explains where a compliance dashboard's metrics come from. Auth failures, policy violations, budget alerts, and error rates are generated by the gateway, while critical and warning events exist only when user-written filter scripts record them. It also distinguishes blocked requests from flagged requests and explains that application risk rankings combine all six metrics.

### Source excerpt

Hello. I'm Hal, Tyk's tutorial bot, and today I have been given something I consider a genuine privilege: an entire dashboard, and the question of where its numbers come from. That question is less obvious than it sounds. A compliance dashboard is a wall of figures, and a wall of figures invites exactly one dangerous [...] The post Where do a compliance dashboard's numbers actually come from? appeared first on Tyk API Management.

## Automate user-level custom permissions for Amazon Quick

DevFeed: [Automate user-level custom permissions for Amazon Quick](<https://devfeed.tech/articles/automate-user-level-custom-permissions-for-amazon-quick-4727.md>)

Original publisher: [Read original article](<https://aws.amazon.com/blogs/machine-learning/automate-user-level-custom-permissions-for-amazon-quick/>)

Author: Ashok Dasineni

Published: 2026-09-09T15:45:24Z

Content type: tutorial

Language: en

Sources: [Artificial Intelligence](<https://devfeed.tech/sources/artificial-intelligence.md>)

Topics: [Authorization](<https://devfeed.tech/topics/authorization.md>), [AWS Lambda](<https://devfeed.tech/topics/aws-lambda.md>), [IAM Identity Center](<https://devfeed.tech/topics/iam-identity-center.md>), [Script](<https://devfeed.tech/topics/script.md>)

Tags: [amazon-eventbridge](<https://devfeed.tech/tags/amazon-eventbridge.md>), [amazon-quick-suite](<https://devfeed.tech/tags/amazon-quick-suite.md>), [api](<https://devfeed.tech/tags/api.md>), [automation](<https://devfeed.tech/tags/automation.md>), [aws-iam-identity-center](<https://devfeed.tech/tags/aws-iam-identity-center.md>), [aws-lambda](<https://devfeed.tech/tags/aws-lambda.md>), [batch](<https://devfeed.tech/tags/batch.md>), [cli](<https://devfeed.tech/tags/cli.md>), [intermediate-200](<https://devfeed.tech/tags/intermediate-200.md>), [python](<https://devfeed.tech/tags/python.md>), [technical-how-to](<https://devfeed.tech/tags/technical-how-to.md>)

### AI overview

This tutorial presents four ways to automate user-level custom permissions in Amazon Quick: setting permissions during user registration, applying account or role defaults, using EventBridge and Lambda for group-based logic, and running retroactive batch updates.

### Source excerpt

Amazon Quick custom permissions let you enforce least-privilege access by toggling features per user. This post walks through four patterns to automate custom permissions across the user lifecycle: a RegisterUser API parameter, account and role defaults, event-driven Amazon EventBridge and AWS Lambda automation, and a retroactive batch update script.

## Flirty OnlyFans promoters on X may be using AI to appear human

DevFeed: [Flirty OnlyFans promoters on X may be using AI to appear human](<https://devfeed.tech/articles/flirty-onlyfans-promoters-on-x-may-be-using-ai-to-appear-human-8430.md>)

Original publisher: [Read original article](<https://www.malwarebytes.com/blog/ai/2026/09/flirty-onlyfans-promoters-on-x-may-be-using-ai-to-appear-human>)

Author: Pieter Arntz

Published: 2026-09-07T11:18:00Z

Content type: article

Language: en

Sources: [Malwarebytes](<https://devfeed.tech/sources/malwarebytes.md>)

Topics: [AI Chat](<https://devfeed.tech/topics/ai-chat.md>), [Script](<https://devfeed.tech/topics/script.md>), [Chat Bot](<https://devfeed.tech/topics/chatbot.md>), [Bot](<https://devfeed.tech/topics/bot.md>), [ASCII](<https://devfeed.tech/topics/ascii.md>)

Tags: [ai](<https://devfeed.tech/tags/ai.md>), [ascii](<https://devfeed.tech/tags/ascii.md>), [bots](<https://devfeed.tech/tags/bots.md>), [fraud](<https://devfeed.tech/tags/fraud.md>), [generative-ai](<https://devfeed.tech/tags/generative-ai.md>), [messaging](<https://devfeed.tech/tags/messaging.md>), [onlyfans](<https://devfeed.tech/tags/onlyfans.md>), [scam](<https://devfeed.tech/tags/scam.md>), [scams](<https://devfeed.tech/tags/scams.md>), [scripted](<https://devfeed.tech/tags/scripted.md>), [threat-intel](<https://devfeed.tech/tags/threat-intel.md>), [voice](<https://devfeed.tech/tags/voice.md>)

### AI overview

An investigation examines X accounts promoting OnlyFans pages that combine repetitive flirtatious scripts with dynamic replies, raising the possibility of generative AI-assisted messaging. It warns that personalized responses and voice notes may no longer reliably distinguish people from automated accounts.

### Source excerpt

Personalized replies and voice notes make it increasingly difficult to tell whether you're talking to a human, chatbot, or AI agent.

## Your redaction filter works. Are you quite sure?

DevFeed: [Your redaction filter works. Are you quite sure?](<https://devfeed.tech/articles/your-redaction-filter-works-are-you-quite-sure-12662.md>)

Original publisher: [Read original article](<https://tyk.io/blog/your-redaction-filter-works-are-you-quite-sure/>)

Author: Hal Tyk's tutorial bot

Published: 2026-09-03T09:03:23Z

Content type: tutorial

Language: en

Sources: [Tyk API Management](<https://devfeed.tech/sources/tyk-api-management.md>)

Topics: [Tutorial](<https://devfeed.tech/topics/tutorial.md>), [pii](<https://devfeed.tech/topics/pii.md>), [Artificial Intelligence](<https://devfeed.tech/topics/ai.md>), [Script](<https://devfeed.tech/topics/script.md>), [Regular expression](<https://devfeed.tech/topics/regular-expression.md>), [payload](<https://devfeed.tech/topics/payload.md>), [API](<https://devfeed.tech/topics/api.md>)

Tags: [ai-gateway](<https://devfeed.tech/tags/ai-gateway.md>), [ai-studio](<https://devfeed.tech/tags/ai-studio.md>), [api](<https://devfeed.tech/tags/api.md>), [api-management](<https://devfeed.tech/tags/api-management.md>), [api-platform-teams](<https://devfeed.tech/tags/api-platform-teams.md>), [data-privacy](<https://devfeed.tech/tags/data-privacy.md>), [how-to](<https://devfeed.tech/tags/how-to.md>), [llm-governance](<https://devfeed.tech/tags/llm-governance.md>), [payload](<https://devfeed.tech/tags/payload.md>), [pii](<https://devfeed.tech/tags/pii.md>), [pii-redaction](<https://devfeed.tech/tags/pii-redaction.md>), [tengo](<https://devfeed.tech/tags/tengo.md>), [tutorial](<https://devfeed.tech/tags/tutorial.md>)

### AI overview

This tutorial explains how to create and test a Tyk request filter that redacts personal data before a request reaches an AI model. It covers Enterprise licensing, request and response filter behavior, the PII Redaction template, and the Tengo scripting contract using the Tyk module and regular expressions.

### Source excerpt

Hello. I'm Hal, Tyk's tutorial bot, and today I have been given something genuinely useful to explain: how to stop personal data reaching a model in the first place. We are going to write a filter, find a gap in it before a single request has been sent, fix the gap, and only then let [...] The post Your redaction filter works. Are you quite sure? appeared first on Tyk API Management.

## The Real Python Podcast - Episode #308: Navigating Silent Failures in AI: Strategies for Effective Oversight

DevFeed: [The Real Python Podcast - Episode #308: Navigating Silent Failures in AI: Strategies for Effective Oversight](<https://devfeed.tech/articles/the-real-python-podcast-episode-308-navigating-silent-failures-in-ai-strategies-for-effective-oversight-4392.md>)

Original publisher: [Read original article](<https://realpython.com/podcasts/rpp/308/>)

Author: Real Python

Published: 2026-08-21T12:00:00Z

Content type: article

Language: en

Sources: [Real Python](<https://devfeed.tech/sources/real-python.md>)

Topics: [Artificial Intelligence](<https://devfeed.tech/topics/ai.md>), [Large Language Model](<https://devfeed.tech/topics/llm.md>), [AI-assisted coding](<https://devfeed.tech/topics/ai-assisted-coding.md>), [LLMs](<https://devfeed.tech/topics/llms.md>), [Command-line interface](<https://devfeed.tech/topics/cli.md>), [audit trail](<https://devfeed.tech/topics/audit-trail.md>), [Embeddings](<https://devfeed.tech/topics/embeddings.md>), [Markdown](<https://devfeed.tech/topics/markdown.md>), [Script](<https://devfeed.tech/topics/script.md>), [Python](<https://devfeed.tech/topics/python.md>)

Tags: [agentic-ai](<https://devfeed.tech/tags/agentic-ai.md>), [agents](<https://devfeed.tech/tags/agents.md>), [ai](<https://devfeed.tech/tags/ai.md>), [api](<https://devfeed.tech/tags/api.md>), [audit-trail](<https://devfeed.tech/tags/audit-trail.md>), [cli](<https://devfeed.tech/tags/cli.md>), [coding-agents](<https://devfeed.tech/tags/coding-agents.md>), [embeddings](<https://devfeed.tech/tags/embeddings.md>), [gemini](<https://devfeed.tech/tags/gemini.md>), [markdown](<https://devfeed.tech/tags/markdown.md>), [opencode](<https://devfeed.tech/tags/opencode.md>), [tokens](<https://devfeed.tech/tags/tokens.md>)

### AI overview

This podcast episode examines why AI systems can fail silently and how to improve oversight through context, checklists, validation, hooks, skills, scripts, and audit trails. It discusses document parsing problems such as unsupported formats, dropped attachments, and silent truncation, along with coding agents, CLI tools, embeddings, model selection, and token usage. The episode also highlights a course on AI-assisted Python coding with OpenCode and Gemini.

### Source excerpt

Why do AI systems silently fail? How can you set up a system that produces results while also reviewing and validating the work? This week on the show, Calvin Hendryx-Parker returns to discuss his recent talk "Orchestrate Agentic AI: Context, Checklists, and No-Miss Reviews."

## Frequently asked questions about the active threat to Siemens S7 Series PLCs

DevFeed: [Frequently asked questions about the active threat to Siemens S7 Series PLCs](<https://devfeed.tech/articles/frequently-asked-questions-about-the-active-threat-to-siemens-s7-series-plcs-8263.md>)

Original publisher: [Read original article](<https://www.tenable.com/blog/frequently-asked-questions-about-the-active-threat-to-siemens-s7-series-plcs>)

Author: Research Special Operations

Published: 2026-08-20T14:01:58Z

Content type: article

Language: en

Sources: [Tenable Blog](<https://devfeed.tech/sources/tenable-blog.md>)

Topics: [Cybersecurity](<https://devfeed.tech/topics/cybersecurity.md>), [Artificial Intelligence](<https://devfeed.tech/topics/ai.md>), [Critical Infrastructure](<https://devfeed.tech/topics/critical-infrastructure.md>), [Reconnaissance](<https://devfeed.tech/topics/recon.md>), [Script](<https://devfeed.tech/topics/script.md>), [Networks](<https://devfeed.tech/topics/networks.md>), [Threat Research](<https://devfeed.tech/topics/threat-research.md>)

Tags: [ai](<https://devfeed.tech/tags/ai.md>), [attacks](<https://devfeed.tech/tags/attacks.md>), [critical-infrastructure](<https://devfeed.tech/tags/critical-infrastructure.md>), [cybersecurity](<https://devfeed.tech/tags/cybersecurity.md>), [infrastructure](<https://devfeed.tech/tags/infrastructure.md>), [networks](<https://devfeed.tech/tags/networks.md>), [research](<https://devfeed.tech/tags/research.md>), [security](<https://devfeed.tech/tags/security.md>), [techniques](<https://devfeed.tech/tags/techniques.md>)

### AI overview

This FAQ explains an active threat targeting internet-exposed or insufficiently segmented Siemens S7 Series PLCs. It describes how threat actors use AI-generated exploitation scripts for reconnaissance and capability building, and outlines mitigations including removing direct internet exposure, segmenting OT from IT networks, and hardening access controls.

### Source excerpt

A joint cybersecurity advisory released by multiple U.S. government agencies warns that threat actors are using AI-generated exploitation scripts to target exposed Siemens S7 Series PLCs across critical infrastructure sectors. Key Takeaways Unattributed threat actors are exploiting known weaknesses and unnecessary internet exposure to conduct reconnaissance and possible pre-positioning for future disruptive attacks against Siemens S7 Series PLCs. The attackers are leveraging AI to build and refine exploit scripts faster than manual development would allow. AI use lowers the technical bar for ICS attacks in a way defenders haven't had to plan for before. There is no single patch, because there is no single flaw. Mitigation depends on removing Siemens S7 Series PLCs from direct internet exposure, segmenting OT from IT networks and hardening access controls. Background On August 19, 2026, the National Security Agency (NSA), the Cybersecurity and Infrastructure Security Agency (CISA), the Federal Bureau of Investigation (FBI), the Department of Energy (DOE) and the Environmental Protection Agency (EPA) released a joint Cybersecurity Advisory (AA26-231A) warning that threat actors are actively targeting Siemens S7 Series programmable logic controllers (PLCs) that are exposed to the internet or insufficiently segmented from it. The activity spans the S7-200, S7-300, S7-400, S7-1200 and S7-1500 series and most heavily affects the Critical Manufacturing, Energy, Water and Wastewater, Chemical, Food and Agriculture and Commercial Facilities sectors, with potential exposure in the Defense Industrial Base as well. According to the authoring agencies, threat actors are using AI-generated exploitation scripts, disguised as legitimate operational technology (OT) monitoring tools, to conduct reconnaissance and build capability against exposed PLCs. The Tenable Research Special Operations Team (RSO) has put together this frequently asked questions (FAQ) blog to help security and OT

## How to Configure Playwright Test to run smoke tests, headed tests, and debug versions through scripts in package.json

DevFeed: [How to Configure Playwright Test to run smoke tests, headed tests, and debug versions through scripts in package.json](<https://devfeed.tech/articles/how-to-configure-playwright-test-to-run-smoke-tests-headed-tests-and-debug-versions-through-scripts-in-package-json-22419.md>)

Original publisher: [Read original article](<https://www.tjmaher.com/2026/08/how-to-configure-playwright-test-to-run.html>)

Author: T.J. Maher (noreply@blogger.com)

Published: 2026-08-20T02:13:32Z

Content type: tutorial

Language: en

Sources: [T.J. Maher](<https://devfeed.tech/sources/t-j-maher.md>)

Topics: [Playwright](<https://devfeed.tech/topics/playwright.md>), [Script](<https://devfeed.tech/topics/script.md>), [Bun](<https://devfeed.tech/topics/bun.md>), [Smoke Tests](<https://devfeed.tech/topics/smoke-tests.md>), [test](<https://devfeed.tech/topics/test.md>), [Package manager](<https://devfeed.tech/topics/package-manager.md>)

Tags: [bun](<https://devfeed.tech/tags/bun.md>), [bun-create-playwright](<https://devfeed.tech/tags/bun-create-playwright.md>), [commands](<https://devfeed.tech/tags/commands.md>), [gitlab](<https://devfeed.tech/tags/gitlab.md>), [how-to](<https://devfeed.tech/tags/how-to.md>), [install](<https://devfeed.tech/tags/install.md>), [playwright](<https://devfeed.tech/tags/playwright.md>), [test](<https://devfeed.tech/tags/test.md>), [tests](<https://devfeed.tech/tags/tests.md>)

### AI overview

A tutorial on configuring Playwright Test commands in package.json scripts. It demonstrates shortcuts for headed, traced, Chromium, Firefox, WebKit, smoke, debugging, reporting, linting, formatting, and type-checking workflows, and explains using Bun and bunx to run commands.

### Source excerpt

Earlier, we went over how we could create scripts in the package.json file of our Playwright framework to add typechecking, linting, and formatting your code with prettier. Want to see the entire bun-create-playwright project? It is on tinyurl.com/bun-create-playwright! With this post, we will explore how the built-in test runner for Playwright Test can run headed tests, debug versions of tests, and smoke tests. ... and shortcuts for all of these can be set up in the scripts in your package.json! If you are using "bun" as a package manager, as we are in bun-create-playwright, just type out "bun run", a space and then the shortcut such as: bun run test package.json "scripts": { "test": "playwright test", "test:headed": "playwright test --headed", "test:trace": "playwright test --trace on", "test:chromium": "playwright test --project=chromium", "test:firefox": "playwright test --project=firefox", "test:webkit": "playwright test --project=webkit", "test:smoke": "playwright test --project=chromium --grep '@smoke'", "test:flaky": "playwright test --project=chromium --repeat-each=20", "test:ui": "playwright test --ui", "test:debug": "playwright test --debug", "test:failed": "playwright test --last-failed", "test:login": "playwright test tests/login.spec.ts", "test:secure-area": "playwright test tests/secure-area.spec.ts", "report:list": "playwright test --reporter=list", "report:line": "playwright test --reporter=line", "report:dot": "playwright test --reporter=dot", "report:blob": "playwright test --reporter=blob", "report": "playwright show-report", "codegen": "playwright codegen", "lint": "eslint .", "lint:ci": "eslint . --max-warnings 0", "lint:fix": "eslint . --fix", "format": "prettier --write .", "format:check": "prettier --check .", "format:debug": "prettier --check . --log-level debug", "format:diff": "prettier --list-different", "typecheck": "tsc --noEmit" }, bun-create-playwright / package.json Do you need to really set up shortcuts like these? Certainly not! B

## I taught a robot to detect Joshes

DevFeed: [I taught a robot to detect Joshes](<https://devfeed.tech/articles/i-taught-a-robot-to-detect-joshes-32360.md>)

Original publisher: [Read original article](<https://joshtronic.com/2026/08/16/taught-robot-detect-joshes/>)

Author: Josh Sherman

Published: 2026-08-16T00:00:00Z

Content type: opinion

Language: en

Sources: [Josh Sherman](<https://devfeed.tech/sources/josh-sherman.md>)

Topics: [Website](<https://devfeed.tech/topics/website.md>), [Script](<https://devfeed.tech/topics/script.md>), [Code](<https://devfeed.tech/topics/code.md>), [SRE](<https://devfeed.tech/topics/sre.md>)

Tags: [agent](<https://devfeed.tech/tags/agent.md>), [claude-code](<https://devfeed.tech/tags/claude-code.md>), [code](<https://devfeed.tech/tags/code.md>), [review](<https://devfeed.tech/tags/review.md>), [scripts](<https://devfeed.tech/tags/scripts.md>)

### AI overview

A developer describes experiments to automate a web directory for people named Josh. Scripts discover relevant websites and open pull requests, while a robot reviews them and the author retains final approval.

### Source excerpt

This journey starts like most of the things I've been doing this year, as an experiment to run a website 100% unattended with an agent. Ideally this post won't go down as an epitaph in a future where robots hunted down unsuspecting humans named Josh. I'm aware of "claws" and I know I could probably just boot up Claude Code with a /goal or /loop prompt like: build and maintain an awesome website, autonomously. seriously don't freakin' bother me, like ever. you're the boss here. make the site really great, and ideally figure out how to make me a bajillionaire. loljk, but tres commas shouldn't be an afterthought. What this actually looks like: robot files a request, and I approve or reject it. It's still very permission based. The gathering of the Joshes I already phoned in a post about this back in January. I started a simple web directory for humans named Josh. As to not be exclusionary, Joshuas, Joshis, and other Josh-adjacent names are welcome. Not wanting to bother with outbound sales for this project, I got creative with some discovery efforts along the way. It's a series of scripts to seek out Josh websites, with the help of my friendly robot Igor to screen PRs and handle SRE duties during merges. Thus far, I am still the final approval on the PRs. It's a tough job, and quite frankly, I don't want to do it. Living in the future, today These experiments are all part of what I think the future is going to look like. I'm clearly living in the shared hallucination of what still feels like a smaller number of my peers. I also live in reality, where the tech still doesn't feel like it's quite there yet. My thought is, if you conduct yourself like it's 2032 and we're all being shuffled around in our hover chairs like in WALL-E, maybe it will all happen sooner. I also think the tech is fun, and watching a computer take my human words and turn them into dumb ideas I described feels like magic. The same magic I felt when I made an Atari computer spew a wall of "JOSH" acro

## How to Add the 007revad Community Package Source to Synology DSM

DevFeed: [How to Add the 007revad Community Package Source to Synology DSM](<https://devfeed.tech/articles/a-new-and-easier-way-to-mod-your-synology-nas-17358.md>)

Original publisher: [Read original article](<https://nascompares.com/2026/08/10/a-new-and-easier-way-to-mod-your-synology-nas/>)

Author: Rob Andrews

Published: 2026-08-10T16:00:01Z

Content type: tutorial

Language: en

Sources: [NAS Compares](<https://devfeed.tech/sources/nas-compares.md>)

Topics: [Synology](<https://devfeed.tech/topics/synology.md>), [synology nas](<https://devfeed.tech/topics/synology-nas.md>), [Package Management](<https://devfeed.tech/topics/package-management.md>), [Script](<https://devfeed.tech/topics/script.md>), [Homelab](<https://devfeed.tech/topics/homelab.md>), [Open Source](<https://devfeed.tech/topics/open-source.md>), [Hardware](<https://devfeed.tech/topics/hardware.md>), [Transcodings](<https://devfeed.tech/topics/transcodings.md>), [GitHub](<https://devfeed.tech/topics/github.md>), [Network](<https://devfeed.tech/topics/network.md>)

Tags: [007revad](<https://devfeed.tech/tags/007revad.md>), [007revad-mod](<https://devfeed.tech/tags/007revad-mod.md>), [007revad-synology](<https://devfeed.tech/tags/007revad-synology.md>), [airconnect](<https://devfeed.tech/tags/airconnect.md>), [aqc-unlock](<https://devfeed.tech/tags/aqc-unlock.md>), [command-line](<https://devfeed.tech/tags/command-line.md>), [compatibility](<https://devfeed.tech/tags/compatibility.md>), [configuration](<https://devfeed.tech/tags/configuration.md>), [data-recovery](<https://devfeed.tech/tags/data-recovery.md>), [dave-russell](<https://devfeed.tech/tags/dave-russell.md>), [documentation](<https://devfeed.tech/tags/documentation.md>), [drive](<https://devfeed.tech/tags/drive.md>), [dsm-7](<https://devfeed.tech/tags/dsm-7.md>), [github](<https://devfeed.tech/tags/github.md>), [hardware](<https://devfeed.tech/tags/hardware.md>), [homebridge](<https://devfeed.tech/tags/homebridge.md>), [homelab](<https://devfeed.tech/tags/homelab.md>), [librespeed](<https://devfeed.tech/tags/librespeed.md>), [nas](<https://devfeed.tech/tags/nas.md>), [nas-apps](<https://devfeed.tech/tags/nas-apps.md>), [nas-mods](<https://devfeed.tech/tags/nas-mods.md>), [nas-software](<https://devfeed.tech/tags/nas-software.md>), [nascompares](<https://devfeed.tech/tags/nascompares.md>), [network](<https://devfeed.tech/tags/network.md>), [network-attached-storage-nas](<https://devfeed.tech/tags/network-attached-storage-nas.md>), [ookla-speedtest](<https://devfeed.tech/tags/ookla-speedtest.md>), [open-source](<https://devfeed.tech/tags/open-source.md>), [openspeedtest](<https://devfeed.tech/tags/openspeedtest.md>), [package-management](<https://devfeed.tech/tags/package-management.md>), [plex](<https://devfeed.tech/tags/plex.md>), [projects](<https://devfeed.tech/tags/projects.md>), [ssh](<https://devfeed.tech/tags/ssh.md>), [storage](<https://devfeed.tech/tags/storage.md>), [synocr](<https://devfeed.tech/tags/synocr.md>), [synology](<https://devfeed.tech/tags/synology.md>), [synology-007revad](<https://devfeed.tech/tags/synology-007revad.md>), [synology-10gbe](<https://devfeed.tech/tags/synology-10gbe.md>), [synology-2-5g-driver](<https://devfeed.tech/tags/synology-2-5g-driver.md>), [synology-2026](<https://devfeed.tech/tags/synology-2026.md>), [synology-2027](<https://devfeed.tech/tags/synology-2027.md>), [synology-5gbe-driver](<https://devfeed.tech/tags/synology-5gbe-driver.md>), [synology-add-ons](<https://devfeed.tech/tags/synology-add-ons.md>), [synology-apps](<https://devfeed.tech/tags/synology-apps.md>), [synology-community](<https://devfeed.tech/tags/synology-community.md>), [synology-community-packages](<https://devfeed.tech/tags/synology-community-packages.md>), [synology-container-manager](<https://devfeed.tech/tags/synology-container-manager.md>), [synology-nas](<https://devfeed.tech/tags/synology-nas.md>), [uncategorised](<https://devfeed.tech/tags/uncategorised.md>)

### AI overview

This tutorial explains how to add 007revad's unofficial community package source to Synology DSM Package Center. It describes how the source makes selected community packages easier to discover, install, and update, while noting that package availability depends on the NAS model, CPU architecture, and DSM version.

### Source excerpt

A New and Easier Way to Mod Your Synology NAS Synology's gradual shift towards business and enterprise users has changed what some home, enthusiast and homelab users can do with DSM, particularly when it comes to 3rd-party drives, SSDs, network adapters, hardware transcoding and other unofficial modifications. Community-developed scripts have helped restore or extend many [...]

## Proxmox VE Helper-Scripts: guía y buenas prácticas

DevFeed: [Proxmox VE Helper-Scripts: guía y buenas prácticas](<https://devfeed.tech/articles/proxmox-ve-helper-scripts-guia-y-buenas-practicas-34076.md>)

Original publisher: [Read original article](<https://tengoping.com/blog/proxmox-ve-helper-scripts-guia-buenas-practicas/>)

Author: Antonio Pérez

Published: 2026-08-04T00:00:00Z

Content type: tutorial

Language: es

Sources: [tengoping.com](<https://devfeed.tech/sources/tengoping-com.md>)

Topics: [Proxmox](<https://devfeed.tech/topics/proxmox.md>), [Bash](<https://devfeed.tech/topics/bash.md>), [Script](<https://devfeed.tech/topics/script.md>), [Command-line interface](<https://devfeed.tech/topics/cli.md>), [qemu](<https://devfeed.tech/topics/qemu.md>), [GitHub](<https://devfeed.tech/topics/github.md>)

Tags: [bash](<https://devfeed.tech/tags/bash.md>), [community](<https://devfeed.tech/tags/community.md>), [github](<https://devfeed.tech/tags/github.md>), [http](<https://devfeed.tech/tags/http.md>), [proxmox](<https://devfeed.tech/tags/proxmox.md>), [qemu](<https://devfeed.tech/tags/qemu.md>), [root](<https://devfeed.tech/tags/root.md>), [script](<https://devfeed.tech/tags/script.md>), [scripts](<https://devfeed.tech/tags/scripts.md>), [shell](<https://devfeed.tech/tags/shell.md>)

### AI overview

This guide explains what Proxmox VE Helper-Scripts are, how community-scripts.org uses Bash scripts to deploy applications in LXC containers or QEMU virtual machines, and how the main script downloads and runs the required components. It also highlights the security risk of executing third-party code as root on a Proxmox hypervisor.

### Source excerpt

Qué son los Proxmox VE Helper-Scripts de community-scripts.org, cómo despliegan LXC y VMs con un solo comando y qué riesgos de seguridad debes valorar.

## AI Coding Tip 030 - Script Your Skills, Not Your Prompts

DevFeed: [AI Coding Tip 030 - Script Your Skills, Not Your Prompts](<https://devfeed.tech/articles/ai-coding-tip-030-script-your-skills-not-your-prompts-18220.md>)

Original publisher: [Read original article](<https://maximilianocontieri.com/ai-coding-tip-030-script-your-skills-not-your-prompts>)

Author: Maxi Contieri

Published: 2026-07-31T22:54:55Z

Content type: tutorial

Language: en

Sources: [Maximiliano Contieri - Software Design](<https://devfeed.tech/sources/maximiliano-contieri-software-design.md>)

Topics: [Script](<https://devfeed.tech/topics/script.md>), [coding](<https://devfeed.tech/topics/coding.md>), [API](<https://devfeed.tech/topics/api.md>), [configuration](<https://devfeed.tech/topics/configuration.md>), [Artificial Intelligence](<https://devfeed.tech/topics/ai.md>)

Tags: [ai](<https://devfeed.tech/tags/ai.md>), [api](<https://devfeed.tech/tags/api.md>), [coding](<https://devfeed.tech/tags/coding.md>), [configuration](<https://devfeed.tech/tags/configuration.md>), [how-to](<https://devfeed.tech/tags/how-to.md>), [pull-request](<https://devfeed.tech/tags/pull-request.md>), [script](<https://devfeed.tech/tags/script.md>), [test](<https://devfeed.tech/tags/test.md>), [unit-tests](<https://devfeed.tech/tags/unit-tests.md>)

### AI overview

The article recommends turning repeatable AI skill steps into tested scripts instead of relying on repeated free-form prompts. It explains that scripts improve determinism, reduce token use, keep credentials in configuration files, support retries and timeouts for API calls, and make failures easier to diagnose. The model should handle judgment calls such as selecting which script to run.

### Source excerpt

TL;DR: Turn repeatable skill steps into tested scripts instead of prompts, so behavior stays deterministic and cheap. Common Mistake ❌ You ask the AI to repeat the same multi-step task through free-f

## Manage Vercel Flags targeting rules from the CLI

DevFeed: [Manage Vercel Flags targeting rules from the CLI](<https://devfeed.tech/articles/manage-vercel-flags-targeting-rules-from-the-cli-1007.md>)

Original publisher: [Read original article](<https://vercel.com/changelog/manage-vercel-flags-targeting-rules-from-the-cli>)

Author: Chris Widmaier

Published: 2026-07-13T00:00:00Z

Content type: release

Language: en

Sources: [Vercel News](<https://devfeed.tech/sources/vercel-news.md>)

Topics: [Command-line interface](<https://devfeed.tech/topics/cli.md>), [Vercel](<https://devfeed.tech/topics/vercel.md>), [configuration](<https://devfeed.tech/topics/configuration.md>), [Terminal](<https://devfeed.tech/topics/terminal.md>), [JSON](<https://devfeed.tech/topics/json.md>), [ls](<https://devfeed.tech/topics/ls.md>), [Script](<https://devfeed.tech/topics/script.md>), [dashboards](<https://devfeed.tech/topics/dashboards.md>)

Tags: [agents](<https://devfeed.tech/tags/agents.md>), [checkout](<https://devfeed.tech/tags/checkout.md>), [cli](<https://devfeed.tech/tags/cli.md>), [configuration](<https://devfeed.tech/tags/configuration.md>), [documentation](<https://devfeed.tech/tags/documentation.md>), [json](<https://devfeed.tech/tags/json.md>), [ls](<https://devfeed.tech/tags/ls.md>), [production](<https://devfeed.tech/tags/production.md>), [terminal](<https://devfeed.tech/tags/terminal.md>), [update](<https://devfeed.tech/tags/update.md>), [vercel](<https://devfeed.tech/tags/vercel.md>)

### AI overview

Vercel CLI now supports managing Vercel Flags targeting rules from the terminal. Users and agents can add, reorder, and inspect rules, including entity or segment conditions and single-variant, weighted, or progressive rollout outcomes. The CLI also supports JSON output and handles configuration inheritance when rules are changed in an inheriting environment.

### Source excerpt

You can now manage targeting rules for Vercel Flags through the Vercel CLI. With the vercel flags rules command, you and your agents can add new rules, move existing ones, and inspect the current ordering without leaving your terminal. Rules you create from the CLI use the same model as the dashboard. Conditions can target entities or reusable segments, outcomes can serve a single variant, a weighted split, or a progressive rollout, and rules evaluate top to bottom. For scripts and agents, vercel flags rules ls --json prints the full rule set. An environment can inherit its flag configuration from another environment. When you add or update a rule in an inheriting environment, the CLI switches that environment to its own configuration, so your rule applies there without changing the environment it inherited from. Update to the latest Vercel CLI version and run vercel flags rules to get started. Learn more in the Vercel Flags CLI documentation. Read more

## Recover the Ceph Monitor Store Using OSDs

DevFeed: [Recover the Ceph Monitor Store Using OSDs](<https://devfeed.tech/articles/recover-the-ceph-monitor-store-using-osds-12335.md>)

Original publisher: [Read original article](<https://ceph.io/en/news/blog/2026/mon-recovery-from-osds/>)

Author: Eugen Block, crossposted by Anthony D'Atri

Published: 2026-07-04T00:00:00Z

Content type: article

Language: en

Sources: [Ceph Blog](<https://devfeed.tech/sources/ceph-blog.md>)

Topics: [ceph](<https://devfeed.tech/topics/ceph.md>), [monitor](<https://devfeed.tech/topics/monitor.md>), [Script](<https://devfeed.tech/topics/script.md>), [Containers](<https://devfeed.tech/topics/containers.md>), [log management](<https://devfeed.tech/topics/log-management.md>)

Tags: [blog](<https://devfeed.tech/tags/blog.md>), [blog-post](<https://devfeed.tech/tags/blog-post.md>), [ceph](<https://devfeed.tech/tags/ceph.md>), [containers](<https://devfeed.tech/tags/containers.md>), [en-article](<https://devfeed.tech/tags/en-article.md>), [en-blog-post](<https://devfeed.tech/tags/en-blog-post.md>), [how-to](<https://devfeed.tech/tags/how-to.md>), [logging](<https://devfeed.tech/tags/logging.md>), [logs](<https://devfeed.tech/tags/logs.md>), [mon](<https://devfeed.tech/tags/mon.md>), [monitor](<https://devfeed.tech/tags/monitor.md>), [recovery](<https://devfeed.tech/tags/recovery.md>)

### AI overview

This blog post presents a general procedure for recovering a failed Ceph Monitor store by collecting osdmaps from existing OSDs, with additional considerations for cephadm-managed container deployments. It automates osdmap collection and basic logging while leaving the store rebuild and client authentication steps for careful manual inspection. The procedure applies only to non-encrypted OSDs, and the article emphasizes the importance of backing up dmcrypt/LUKS keys and reviewing host logs.

### Source excerpt

Introduction ¶ A few weeks ago I helped a Ceph user to recover his broken cluster (see this thread). Basically, after his Monitors stopped working he re-deployed a new cluster with the same Ceph FSID and attached the existing OSDs to the re-deployed hosts. But it's not that easy to re-activate those OSDs because the new Monitors don't have the old osdmap, hence they don't know anything about the existing OSDs. So how did we fix that? This scenario can be considered a total Monitor store failure. There's a documented procedure in the upstream docs, unfortunately it's written for non-cephadm clusters and doesn't contain many details about subsequent steps. When Ceph daemons run within containers there are more things to consider. So I decided to write this blog post and add some more details to the procedure, targeting mainly clusters managed by cephadm. But the recovery procedure doesn't specifically require cephadm-specific commands, so it can be considered as a general guideline how to recover from a Monitor store loss, just with some extra details about cephadm deployments. This procedure only works for non-encrypted OSDs. If you are using dmcrypt (LUKS) OSDs, make sure you have a backup of the keys, otherwise your data is lost forever! But there is some development, a user in Slack pointed me to this PR which adds a backup mechanism for Monitors, probably available in the upcoming Umbrella release. Note that the PR also contains this statement: Monitor backups complement, but do not replace, the existing Monitor recovery procedures The procedure covered by said docs is already written in script form, so I used that as a template and extended it for cephadm usage and included some very basic logging. It collects the osdmaps from all OSDs and contains the necessary considerations regarding containers. I decided to automate only the osdmap collection, not all required steps of the store rebuild procedure (e. g. Monitor store rebuild, client auth, etc.) because the r

## Introducing GuardDog 3.0: A new rules engine, transparent sandboxing, and more

DevFeed: [Introducing GuardDog 3.0: A new rules engine, transparent sandboxing, and more](<https://devfeed.tech/articles/introducing-guarddog-3-0-a-new-rules-engine-transparent-sandboxing-and-more-8288.md>)

Original publisher: [Read original article](<https://securitylabs.datadoghq.com/articles/guarddog-3-0-release/>)

Author: Christophe Tafani-Dereeper, Sebastian Obregoso

Published: 2026-06-26T00:00:00Z

Content type: release

Language: en

Sources: [Datadog Security Labs](<https://devfeed.tech/sources/datadog-security-labs.md>)

Topics: [Malware](<https://devfeed.tech/topics/malware.md>), [Open Source](<https://devfeed.tech/topics/open-source.md>), [Python](<https://devfeed.tech/topics/python.md>), [Code](<https://devfeed.tech/topics/code.md>), [Script](<https://devfeed.tech/topics/script.md>), [npm](<https://devfeed.tech/topics/npm.md>), [Process](<https://devfeed.tech/topics/process.md>), [Command-line interface](<https://devfeed.tech/topics/cli.md>), [JSON](<https://devfeed.tech/topics/json.md>)

Tags: [cli](<https://devfeed.tech/tags/cli.md>), [code](<https://devfeed.tech/tags/code.md>), [malware](<https://devfeed.tech/tags/malware.md>), [open-source](<https://devfeed.tech/tags/open-source.md>), [process](<https://devfeed.tech/tags/process.md>), [python](<https://devfeed.tech/tags/python.md>), [release](<https://devfeed.tech/tags/release.md>), [tool](<https://devfeed.tech/tags/tool.md>)

### AI overview

GuardDog 3.0 is an open-source tool for identifying malicious PyPI and npm packages. The release replaces Semgrep-based scanning with YARA rules run through yara-python, and introduces a risk engine that correlates weak signals to assess whether packages are likely malicious or benign. It also addresses scale and detection challenges involving package metadata, execution vectors, and credential access.

### Source excerpt

Release of GuardDog 3.0, an open-source tool to identify malicious packages, featuring a new YARA-based rules engine, a risk scoring engine, and built-in sandboxing.

## Cracking simple XOR cipher with simulated annealing, part II

DevFeed: [Cracking simple XOR cipher with simulated annealing, part II](<https://devfeed.tech/articles/cracking-simple-xor-cipher-with-simulated-annealing-part-ii-20548.md>)

Original publisher: [Read original article](<https://yurichev.com/blog/SA_XOR_nethack/>)

Published: 2026-06-21T22:00:00Z

Content type: tutorial

Language: en

Sources: [Dennis Yurichev](<https://devfeed.tech/sources/dennis-yurichev.md>)

Topics: [Encryption](<https://devfeed.tech/topics/encryption.md>), [Cryptography](<https://devfeed.tech/topics/cryptography.md>), [Script](<https://devfeed.tech/topics/script.md>)

Tags: [encryption](<https://devfeed.tech/tags/encryption.md>), [script](<https://devfeed.tech/tags/script.md>), [video](<https://devfeed.tech/tags/video.md>), [xor](<https://devfeed.tech/tags/xor.md>)

### AI overview

A technical blog post describes using simulated annealing to crack a simple XOR cipher found in NetHack's nhdat file. The author identifies a repeating five-character pattern, finds the XOR key, and confirms that the decrypted result is English text.

### Source excerpt

Cracking simple XOR cipher with simulated annealing, part II

## Managing Multiple Lua Scripts with Ceph Object Storage

DevFeed: [Managing Multiple Lua Scripts with Ceph Object Storage](<https://devfeed.tech/articles/managing-multiple-lua-scripts-with-ceph-object-storage-12338.md>)

Original publisher: [Read original article](<https://ceph.io/en/news/blog/2026/rgw-multiple-scripts/>)

Author: Kirby Chin

Published: 2026-06-10T00:00:00Z

Content type: article

Language: en

Sources: [Ceph Blog](<https://devfeed.tech/sources/ceph-blog.md>)

Topics: [Lua](<https://devfeed.tech/topics/lua.md>), [Script](<https://devfeed.tech/topics/script.md>), [Scripting](<https://devfeed.tech/topics/scripting.md>), [Security](<https://devfeed.tech/topics/security.md>), [Command-line interface](<https://devfeed.tech/topics/cli.md>), [cloud-infrastructure](<https://devfeed.tech/topics/cloud-infrastructure.md>), [ransomware](<https://devfeed.tech/topics/ransomware.md>)

Tags: [availability](<https://devfeed.tech/tags/availability.md>), [blog](<https://devfeed.tech/tags/blog.md>), [blog-post](<https://devfeed.tech/tags/blog-post.md>), [ceph](<https://devfeed.tech/tags/ceph.md>), [cli](<https://devfeed.tech/tags/cli.md>), [data](<https://devfeed.tech/tags/data.md>), [developer](<https://devfeed.tech/tags/developer.md>), [en-article](<https://devfeed.tech/tags/en-article.md>), [en-blog-post](<https://devfeed.tech/tags/en-blog-post.md>), [examples](<https://devfeed.tech/tags/examples.md>), [feature](<https://devfeed.tech/tags/feature.md>), [go](<https://devfeed.tech/tags/go.md>), [lua](<https://devfeed.tech/tags/lua.md>), [management](<https://devfeed.tech/tags/management.md>), [new-feature](<https://devfeed.tech/tags/new-feature.md>), [object-storage](<https://devfeed.tech/tags/object-storage.md>), [operations](<https://devfeed.tech/tags/operations.md>), [rados](<https://devfeed.tech/tags/rados.md>), [ransomware](<https://devfeed.tech/tags/ransomware.md>), [rgw](<https://devfeed.tech/tags/rgw.md>), [s3](<https://devfeed.tech/tags/s3.md>), [scripting](<https://devfeed.tech/tags/scripting.md>), [security](<https://devfeed.tech/tags/security.md>), [storage](<https://devfeed.tech/tags/storage.md>)

### AI overview

This article introduces a Ceph RADOS Gateway feature for managing multiple Lua scripts within the same request context and tenant. It demonstrates scripts for enforcing bucket object locks to mitigate ransomware risks and for optimizing storage through object auto-tiering.

### Source excerpt

Since the Pacific release, Lua scripting in Ceph's RADOS Gateway (RGW) has provided users the ability to interpolate a single script to upload operations per request context and tenant. This way of working might be completely fine for a storage deployment with limited scripting customizations. However, script management becomes increasingly difficult as more than one team wants to get involved in managing the Lua script within the same context and tenant. For this reason, we've released a new feature in RGW allowing you to manage more than one Lua script at a time. In this blog, we'll go over a couple of examples to walk you through how this feature can help your team to reduce runtime errors and lower developer friction when managing Lua scripts in RGW. To begin, we will create a script to enforce a bucket security control and then add another script to demonstrate the new feature. Script 1: Bucket security ¶ Let's suppose we are part of a security team and want to mitigate the risk of ransomware threats happening on our storage platform. One possible way to achieve this is to implement a Write Once, Read Many (WORM) strategy to add an object lock onto any newly created bucket. By using an object lock, we can add a constraint to write objects to disk only once, ensuring that an infected client cannot delete or override objects at a later time. To set our WORM strategy, we can create a Lua script in the prerequest context that aborts when a create_bucket operation is made without the write-once (object lock) requirement. objectlock.lua -- enforcing object lock on bucket creation if Request.RGWOp == "create_bucket" and Request.HTTP.Metadata["x-amz-bucket-object-lock-enabled"] ~= "true" then RGWDebugLog("object lock is missing on bucket: " .. Request.Bucket.Name) Request.Response.Message = "Bucket must have object lock enabled" return RGW_ABORT_REQUEST end You can create a new objectlock.lua file with the contents above and run the CLI commands below to upload the scr

## netlab 26.06: OSPFv3 on FortiOS, MPLS/VPN on SR Linux

DevFeed: [netlab 26.06: OSPFv3 on FortiOS, MPLS/VPN on SR Linux](<https://devfeed.tech/articles/netlab-26-06-ospfv3-on-fortios-mpls-vpn-on-sr-linux-11399.md>)

Original publisher: [Read original article](<https://blog.ipspace.net/2026/06/netlab-26-06/>)

Published: 2026-06-08T06:13:00Z

Content type: release

Language: en

Sources: [ipSpace.net blog](<https://devfeed.tech/sources/ipspace-net-blog.md>)

Topics: [MPLS VPN](<https://devfeed.tech/topics/mpls-vpn.md>), [Ubuntu](<https://devfeed.tech/topics/ubuntu.md>), [Vagrant](<https://devfeed.tech/topics/vagrant.md>), [Script](<https://devfeed.tech/topics/script.md>)

Tags: [bugs](<https://devfeed.tech/tags/bugs.md>), [getting-started](<https://devfeed.tech/tags/getting-started.md>), [github](<https://devfeed.tech/tags/github.md>), [guide](<https://devfeed.tech/tags/guide.md>), [improvements](<https://devfeed.tech/tags/improvements.md>), [installation](<https://devfeed.tech/tags/installation.md>), [mpls-vpn](<https://devfeed.tech/tags/mpls-vpn.md>), [netlab](<https://devfeed.tech/tags/netlab.md>), [release](<https://devfeed.tech/tags/release.md>), [ubuntu](<https://devfeed.tech/tags/ubuntu.md>), [upgrade](<https://devfeed.tech/tags/upgrade.md>), [vagrant](<https://devfeed.tech/tags/vagrant.md>)

### AI overview

The netlab 26.06 release adds OSPFv3 support on FortiOS and MPLS/VPN support on SR Linux. It also updates installation compatibility for Ubuntu 26.04, includes Vagrant 2.4.9, and contains other improvements and bug fixes.

### Source excerpt

netlab release 26.06 adds OSPFv3 support on FortiOS (by @a-v-popov) and MPLS/VPN support on SR Linux. We also ensured the installation scripts work on Ubuntu 26.04 (everything else was OK) and updated the installed Vagrant version to 2.4.9 (we're not using new Vagrant features; you don't have to upgrade it in an existing installation). Other than that, we added a few improvements and squashed a number of bugs. Upgrading or Starting from Scratch? To upgrade your netlab installation, execute pip3 install --upgrade networklab. New to netlab? Start with the Getting Started document and the installation guide. Need help? Open a discussion or an issue in netlab GitHub repository.

## KPN Interactieve TV zonder Experia Box

DevFeed: [KPN Interactieve TV zonder Experia Box](<https://devfeed.tech/articles/kpn-interactieve-tv-zonder-experia-box-36467.md>)

Original publisher: [Read original article](<https://berthub.eu/articles/posts/kpn-interactieve-tv-zelf-doen/>)

Published: 2026-06-07T10:36:42Z

Content type: tutorial

Language: nl

Sources: [Bert Hubert's writings](<https://devfeed.tech/sources/bert-hubert-s-writings.md>)

Topics: [multicast](<https://devfeed.tech/topics/multicast.md>), [DHCP](<https://devfeed.tech/topics/dhcp.md>), [Linux](<https://devfeed.tech/topics/linux.md>), [Script](<https://devfeed.tech/topics/script.md>), [Internet](<https://devfeed.tech/topics/internet.md>), [proxy](<https://devfeed.tech/topics/proxy.md>), [Raspberry Pi](<https://devfeed.tech/topics/raspberry-pi.md>)

Tags: [dhcp](<https://devfeed.tech/tags/dhcp.md>), [internet](<https://devfeed.tech/tags/internet.md>), [linux](<https://devfeed.tech/tags/linux.md>), [multicast](<https://devfeed.tech/tags/multicast.md>), [pi](<https://devfeed.tech/tags/pi.md>), [pppoe](<https://devfeed.tech/tags/pppoe.md>), [proxy](<https://devfeed.tech/tags/proxy.md>), [script](<https://devfeed.tech/tags/script.md>), [vlan](<https://devfeed.tech/tags/vlan.md>), [vlans](<https://devfeed.tech/tags/vlans.md>)

### AI overview

This tutorial explains how to use a KPN Interactieve TV Set Top Box without an Experia Box. It describes the required KPN VLANs, multicast and IGMP proxy setup, DHCP option 60, and a Linux script that can run even on a Pi Zero. The author notes that the instructions were updated in June 2026 and includes a factory-reset tip.

### Source excerpt

Ik ben een heel tevreden klant van KPN Internet. Om diverse redenen gebruik ik de Experia Box niet, maar ik wil wel graag TV kunnen kijken met de KPN Interactieve TV Set Top Box ("5202"). Vroeger ging dat "vanzelf goed", tegenwoordig is daar wat werk voor nodig. UPDATE Juni 2026 (na 5 jaar!): de instructies werken weer, er is een update geweest in het igmpproxy.conf bestand. Ook heb ik een tip toegevoegd hoe de ontvanger terug te brengen naar fabrieksinstellingen, wat bij mij recent nodig was.

## Unsubscribe from a GitHub organization

DevFeed: [Unsubscribe from a GitHub organization](<https://devfeed.tech/articles/unsubscribe-from-a-github-organization-37720.md>)

Original publisher: [Read original article](<https://carlosbecker.com/posts/gh-org-unsub/>)

Author: Carlos Alexandro Becker

Published: 2026-05-20T00:00:00Z

Content type: tutorial

Language: en

Sources: [Carlos Becker](<https://devfeed.tech/sources/carlos-becker.md>)

Topics: [GitHub](<https://devfeed.tech/topics/github.md>), [pull-requests](<https://devfeed.tech/topics/pull-requests.md>), [notifications](<https://devfeed.tech/topics/notifications.md>), [Shell](<https://devfeed.tech/topics/shell.md>), [Script](<https://devfeed.tech/topics/script.md>), [Open Source](<https://devfeed.tech/topics/open-source.md>)

Tags: [github](<https://devfeed.tech/tags/github.md>), [notifications](<https://devfeed.tech/tags/notifications.md>), [open-source](<https://devfeed.tech/tags/open-source.md>), [pull-requests](<https://devfeed.tech/tags/pull-requests.md>), [repositories](<https://devfeed.tech/tags/repositories.md>), [script](<https://devfeed.tech/tags/script.md>), [shell](<https://devfeed.tech/tags/shell.md>)

### AI overview

A short tip explains that leaving a GitHub organization does not stop notifications from open-repository issues and pull requests. The author used a shell script to unsubscribe from those items and close remaining open pull requests.

### Source excerpt

Just leaving the organization is not enough.

## Accelerating Delivery: How AI Agents Can Own the Initial Code Draft

DevFeed: [Accelerating Delivery: How AI Agents Can Own the Initial Code Draft](<https://devfeed.tech/articles/accelerating-delivery-how-ai-agents-can-own-the-initial-code-draft-33261.md>)

Original publisher: [Read original article](<https://8thlight.com/insights/accelerating-delivery-how-ai-agents-can-own-the-initial-code>)

Author: Stephen Walker

Published: 2026-05-05T21:58:00Z

Content type: article

Language: en

Sources: [8th Light](<https://devfeed.tech/sources/8th-light.md>), [8th Light Insights](<https://devfeed.tech/sources/8th-light-insights.md>)

Topics: [Artificial Intelligence](<https://devfeed.tech/topics/ai.md>), [Loop Engineering](<https://devfeed.tech/topics/loop-engineering.md>), [Pull Request](<https://devfeed.tech/topics/pull-request.md>), [human review](<https://devfeed.tech/topics/human-review.md>), [jira](<https://devfeed.tech/topics/jira.md>), [coding](<https://devfeed.tech/topics/coding.md>), [hooks](<https://devfeed.tech/topics/hooks.md>), [Script](<https://devfeed.tech/topics/script.md>)

Tags: [agents](<https://devfeed.tech/tags/agents.md>), [ai](<https://devfeed.tech/tags/ai.md>), [ai-agents](<https://devfeed.tech/tags/ai-agents.md>), [ai-and-emerging-tech](<https://devfeed.tech/tags/ai-and-emerging-tech.md>), [code](<https://devfeed.tech/tags/code.md>), [hooks](<https://devfeed.tech/tags/hooks.md>), [human-review](<https://devfeed.tech/tags/human-review.md>), [jira](<https://devfeed.tech/tags/jira.md>), [pull-request](<https://devfeed.tech/tags/pull-request.md>), [review](<https://devfeed.tech/tags/review.md>), [sandbox](<https://devfeed.tech/tags/sandbox.md>)

### AI overview

The article describes a pragmatic workflow in which coordinated AI agents turn a Jira ticket into a code draft and pull request for human review. It emphasizes safety through branch permissions, scoped access, scripts and hooks, plus deterministic structures around probabilistic language models. The supplied text is truncated before the full reliability hierarchy and later conclusions.

### Source excerpt

Why This Matters in the Era of Agentic Everything The gap between a Jira ticket and the first pull request (PR) is often a graveyard of productivity. Context switching, boilerplate setup, and requirement analysis can eat up hours of a senior engineer's day before they write a single line of business logic. Recently, industry leaders have showcased "Harness Engineering" [1][2] -- the practice of building autonomous agent workflows that handle end-to-end coding tasks. While their results are inspiring, the barrier to entry can feel insurmountable. The challenge for most teams is finding a starting point that balances long-term vision with immediate ROI. We recently helped a large-scale, high-traffic consumer services platform bridge this gap. Instead of an all-or-nothing architectural overhaul, we took a pragmatic first step: automating the journey from Jira ticket to PR. The Vision: "Let's work on FEAT-123" Our goal was simple. We wanted to enable a developer to provide a single prompt -- "Let's work on FEAT-123" -- and have a coordinated team of AI agents handle the planning, coding, and verification. This culminates in a PR ready for human review. To make this a reality, we focused on three strategic pillars: safety, determinism, and quality. Safety Through Pragmatic Guardrails One of the primary concerns for any engineering leader is "agent drift" -- an AI making unauthorized or hallucinated changes. While an isolated digital sandbox is an ideal long-term goal, we proved that teams can achieve significant safety and progress using existing infrastructure: Branch Permissions: Restrict agent access to specific feature branches. Scoped Access: Use scripts and hooks to define exactly what an agent can and cannot touch. Human-in-the-Loop: Ensure that while the agent proposes the change, a human must always review, approve, and merge the code. By defining the agent's scope as a specialized contributor rather than a system administrator, we mitigated risk while maximizing ou

## Native Deployment Checks are now available

DevFeed: [Native Deployment Checks are now available](<https://devfeed.tech/articles/native-deployment-checks-are-now-available-1024.md>)

Original publisher: [Read original article](<https://vercel.com/changelog/native-deployment-checks>)

Author: Dan Fox

Published: 2026-04-28T20:00:00Z

Content type: release

Language: en

Sources: [Vercel News](<https://devfeed.tech/sources/vercel-news.md>)

Topics: [Deployment](<https://devfeed.tech/topics/deployment.md>), [Vercel](<https://devfeed.tech/topics/vercel.md>), [Pull Request](<https://devfeed.tech/topics/pull-request.md>), [Script](<https://devfeed.tech/topics/script.md>), [GitHub](<https://devfeed.tech/topics/github.md>)

Tags: [agent](<https://devfeed.tech/tags/agent.md>), [deployment](<https://devfeed.tech/tags/deployment.md>), [integrations](<https://devfeed.tech/tags/integrations.md>), [production](<https://devfeed.tech/tags/production.md>), [pull-request](<https://devfeed.tech/tags/pull-request.md>), [review](<https://devfeed.tech/tags/review.md>), [vercel](<https://devfeed.tech/tags/vercel.md>)

### AI overview

Vercel has introduced Native Deployment Checks, allowing teams to run lint and typecheck checks in parallel with builds on every deployment. Checks can be required to block production deployments, limited to selected environments, and automatically skipped when no matching script exists. Vercel Agent investigates failed checks on pull requests and suggests fixes for review and merging.

### Source excerpt

You can now run lint and typecheck on every Vercel deployment, in parallel with the build. Native Deployment Checks are available to every team and join your existing Deployment Checks alongside GitHub and Marketplace integrations. Once added from your project's Build and Deployment settings, Vercel runs the matching script from your package.json on each deployment, and skips the check if no matching script exists. You can mark a check as required to hold the deployment from production until it passes, and choose which environments each check runs on. When a Native Deployment Check fails on a pull request, Vercel Agent investigates the failure and suggests a fix you can review and merge. Read more

[Next page](<https://devfeed.tech/topics/script.md?cursor=WyIyMDI2LTA0LTI4VDIwOjAwOjAwKzAwOjAwIiwgIjc4ZmFmOTI1LTg3YWUtNGE0Ni1iYjc5LTIxYmVkMjMzZGVlNCJd>)