Posts

[MS] Agent Skills for Python: File, Code, and Class - Composed in One Provider - devamazonaws.blogspot.com

Python developers working with Agent Skills can now author skills as files on disk, as inline Python code, or as reusable classes - and mix them freely through composable source classes that handle discovery, filtering, and deduplication. A skill living in your local repository, one installed from your organization's internal package index, and a quick inline bridge you wrote ten minutes ago all plug into the same provider. This is the third post in our Agent Skills series. The first post introduced file-based skills; the second added code-defined skills, script execution, and approval for Python. This post walks through the two additions that complete the picture: class-based skills and multi-source composition . If you've been following the .NET side, the companion post Agent Skills in .NET: Three Ways to Author, One Provider to Run Them covers the same capabilities for C#. Everything shown here is the Python equivalent - same concepts, idiomatic Python API. The scenari...

Amazon CloudWatch Logs Insights adds new query commands and functions - devamazonaws.blogspot.com

Amazon CloudWatch Logs Insights query language now supports 13 new commands and functions that give you more powerful ways to query, transform, and analyze your logs. Customers analyzing logs in CloudWatch Logs Insights often need to perform string manipulation, encode or decode field values, parse non-JSON log formats, or calculate geographic distances, so they can derive deeper insights from their logs. With this launch, CloudWatch Logs Insights provides new string and numeric functions (round, startswith, endswith, case, regex_replace, haversine), encoding and decoding functions (urlencode, urldecode, base64encode, base64decode), and new parse and analysis commands (parse logfmt, expand, relevantfields). You can now filter logs by string prefixes, decode Base64 payloads inline, parse logfmt structured logs into fields, expand nested JSON arrays into individual records, calculate distances between coordinates, and automatically surface relevant fields in high-cardinality log groups...

SageMaker Unified Studio automates Glue connector provisioning for cross-subnet job retries - devamazonaws.blogspot.com

Amazon SageMaker Unified Studio now supports automatic creation of connections for Glue job retries across subnets to improve data pipeline resilience. This helps organizations running business-critical data pipelines reduce unplanned downtime and meet their SLAs — without requiring engineers to manually configure backup connectors or intervene during subnet failures. With this launch, SageMaker Unified Studio automates the provisioning of Glue connectors across subnets defined in the domain VPC configuration. Administrators can define their domain VPC with multiple private subnets across availability zones, and the system provisions the connectors needed for all new projects so that failed jobs can be retried on an alternate subnet automatically. If a Glue job fails because the primary subnet is unavailable due to IP address exhaustion or availability zone degradation, the job can be retried on a connector in a different subnet. No user action is needed beyond the initial VPC config...

[MS] PowerShell is now notarized and hardened for macOS - devamazonaws.blogspot.com

We're excited to announce that the PowerShell packages for macOS are now properly notarized and hardened, meeting both Apple's security requirements and Microsoft's internal compliance standards. This has been one of the most consistently requested improvements from our macOS community, and we're glad to finally deliver it. What changed Starting with the next release, the PowerShell .pkg installer and tarball for macOS are: Notarized by Apple — macOS no longer warns you that PowerShell is from an unidentified developer Hardened — the PowerShell binary and its libraries are built with the security entitlements Apple recommends for distributed software This update also includes a fix that properly sets the file permissions on files contained in the tarball. These fixes are included in the next maintenance releases of PowerShell 7.4 and higher. What this means for you If you've been working around Gatekeeper warnings, adjusting security settings, runn...

[MS] Visual Studio Code 1.122 - devamazonaws.blogspot.com

Learn what's new in Visual Studio Code 1.122 (Insiders) Read the full article Post Updated on May 27, 2026 at 06:00PM Thanks for reading from devamazonaws.blogspot.com

[MS] Coordinating AI-Assisted Development with AGENTS.md and Skills - devamazonaws.blogspot.com

Image
Introduction When multiple engineers on a team use AI coding tools independently — without shared context about the project's architecture or conventions — the output quality is inconsistent. One developer gets a well-structured endpoint; another gets generic boilerplate that needs to be rewritten. The AI is capable, but it is working blind. This post describes a pattern the ISE team applied on a customer engagement to solve this problem: AGENTS.md files for project-level context and reusable skills for task-level instructions, both consumed automatically by GitHub Copilot CLI . The pattern is both language and framework agnostic. The examples here are drawn from an Azure-deployed polyglot stack (Python/FastAPI backend, Next.js/React frontend, Terraform infrastructure), but the approach applies to any codebase. The Problem: Ad-Hoc AI Usage Doesn't Scale On an ISE engagement involving two Azure-deployed SaaS products, each living in its own polyglot monorepo (infrastructure...

[MS] The classic TreeView control lets me sort by name or by lParam, but why not both? - devamazonaws.blogspot.com

The Win32 TreeView control in the common controls library provides two ways of sorting elements. TVM_­SORT­CHILDREN : Sorts children alphabetically by name. TVM_­SORT­CHILDREN­CB : Sorts children via custmm callback. The custom callback is provided the lParam of the two tree items being compared. But what if you want to sort by a combination of both the text and the lParam ? How do you get both? There are two general designs for using UI controls that represent collections. One model is for the UI control to be the data repository. Everything you need to know about the item resides in the UI control, somewhere in its name, its check state, its selection state, whatever. If you need to know something about an item, you ask the UI control for the information. The second model is for the data repository to be some sort of object that itself does not have any UI. (This is known in the biz as a "data model".) You then construct UI elements to be the representation of ...