Sr. Content Developer at Microsoft, working remotely in PA, TechBash conference organizer, former Microsoft MVP, Husband, Dad and Geek.
149263 stories
·
33 followers

A Designer’s Thoughts About This Moment in AI

1 Share

I was walking my dog in the woods and decided to share my thoughts about the state of AI and the tension between the trajectory of AI companies and the designers/creators/makers of the world who are under a tremendous deal of pressure to wield this new technology.

We are people. We are people who use tools and technologies to make things, to advance things, to move things forward, to make the world a better place and help people become healthier, happier, and safe.

At least that’s the aspiration. We all fall short of it. But I fundamentally believe that most people working to create things and put them out into the world are doing it because they want to make the world a better place.

That is why this moment in time—this new technology, this AI landscape, and how it’s emerging and how it is being wielded and how it is being managed—is so incredibly diametrically opposed to this mission.

The alarming and reckless AI trajectory

As I see it, the transformation from the AI field as academic research—very carefully studied, more philosophical—into rapid commercialization has set off an arms race of the absolute worst kind.

It’s playing out even this week where we see OpenAI and Anthropic gussying themselves up, trying to position themselves to look attractive to win contracts with the conveniently renamed Department of War.

What’s so incredibly terrifying and galling about these efforts is that it’s right there in the name, right? This conveniently renamed Department of War—defense is one thing, right? But war is another.

War, my friends, is bad. War is not desirable. Killing people is not good. Killing people is antithetical to promoting the health, happiness, and safety of people on this planet and the world at large.

And I know that war is complicated. I know that societal factors, political forces, geopolitical conflict—war is not a cut and dry effort, but holy shit, what are we doing here?

What are we designing? What are we actively trying to accomplish in this world? What are we building the technology for? What are we doing here?

If your goal is to scale, to win, to profit, then you’ll be willing to take this massively powerful & unknown force and plug it into an apparatus that is out there developing weapons to kill other human beings.

The fact that’s even being entertained is galling and worrying and utterly and completely reckless and irresponsible. You create the most powerful and potent technology that the world has ever seen and inject it into the bloodstream of society without doing due diligence. Just holy shit. What do you think is gonna happen?

Even if you put guardrails in place, even if you thoughtfully and safely roll it out, bad things are gonna happen. Just due to the very nature of the technology. The grain of AI.

But what happens when you hook it up to things that have proven themselves to be not particularly great in the “caring about human beings” department? That’s where this truly feels so reckless and irresponsible.

Our Tension As Creators

And here we are: the people that are on the receiving end of this. The people who are ostensibly wielding these design materials to help in our pursuit to make the world better, to transform the world to be a more just and peaceful and loving and happy place. A place where people have their needs taken care of, everyone has abundance, everyone has health, safety, happiness, that we’re all able to learn from each other and grow with each other and to move on from so much of the bullshit of the past.

This is all available to us.

But the issue, and the dissonance, and the juxtaposition as I see it—that I’ve never felt before in my entire life—is this: of course, we’ve all used tools and technologies made by imperfect humans. We are all imperfect humans.

We see this lousy trajectory unfolding; this barreling commercial enterprise with lousy morals and motives. It’s terrible, yet it’s also inescapable. It puts us all in a really shitty spot. It puts us all in a really awful position.

And there’s a few things we can do. The first thing we need to do is acknowledge the shitty situation that we are all in.

As people who create things and put things out into the world, we have to acknowledge the fact that the core building blocks, its origin story, is built on stolen IP, right? But its ongoing impacts and effects on society, on the planet, on everything needs to be acknowledged.

“Just don’t use it” isn’t realistic

I’ve heard plenty of reactions, and one of those reactions, including from people I greatly admire, greatly respect, is: “just don’t use it.”

To which I say: good luck with that.

I equate this situation to being a vegan. These are undoubtedly noble pursuits and the planet would be much better off if everyone was a vegan. But of course, to convince everyone on the planet to become a vegan is a huge and herculean task.

And in the case of AI, the potential good that can come from this technology—curing cancer, detecting cancer earlier, giving people voice that didn’t have voice before—there are so many use cases for the application of this technology that can make a world a better place.

So saying “just don’t use it” really discounts that . But again, I understand the spirit of not using it as a form of protest against how this stuff emerged, how it’s currently being managed. I get that.

But not everyone has the luxury of just sitting this out, of closing the laptop lid.

My understanding—what I see across the entire industry—is an entire field under so much pressure to learn, get their head around this, to wield it, to figure out how to use it to improve their work, and to simply say “no, I’m not going to do this” out of principle is career suicide, right?

So this dynamic, this zeitgeist, this “you need to do this” is very, very strong. This is a very strong current.

And while this strong current shouldn’t be inflicted from afar from power structures, I believe that from a pure maker/creator perspective, this absolutely is a potent and potentially really beneficial technology to wield to make things better for people.

So sitting it out—just not using it—is not in the cards for the overwhelming majority of people.

Don’t dilute reality to sleep at night

The other thing we could do is dilute ourselves and make excuses for the morally bankrupt and reckless and irresponsible behavior of these companies who are putting this stuff out there.

I get it. It’s an important knee jerk reaction. We need to sleep at night. And also we see the upside, right? We see the benefits, we see the potential of this technology. In order to square that circle, we could just say, “Ah, it’s actually not that bad.”

I think that at no other moment in time, it’s so incredibly important to be able to hold multiple thoughts in our heads at the same time.

The radically transformative power of this technology is huge, and its potential to make the world a better place is real.

The technology itself is neither positive nor negative, but nor is it neutral. But the companies and the people who are perpetuating this arms race to win, to scale, to profit from it—we need to acknowledge that for what it is.

Michael Jackson and The Need For Nuance

As I’ve been thinking about this, I keep coming back to Michael Jackson. Because Michael Jackson produced some of the most powerful, transformative, amazing, beautiful human art and expression that the world has ever seen. Truly the King of Pop.

And yet, when you look at his personal life and you look at the misdeeds and you look at the behaviors and you look at some of the absolute atrocities perpetuated by him—it’s very difficult to reconcile that.

Cause what do you do? Do you not listen to Billie Jean? Do you not listen to Thriller? Do you not say that those are good songs?

No. The art is truly amazing.

But Michael Jackson is the boss level of separating the art from the artist, and I haven’t been able to reconcile that.

So I’ve been forced into a place that I ultimately think is a healthy attitude to cultivate: these things can both be true. Michael Jackson’s music is utterly and completely amazing, transformative, incredible, continues to transform the world even today. And also he did some horrible things in his time on earth.

And there’s no reconciliation of that, especially now that he’s gone.

So I bring that same tension to this moment in time.

Here is this technology that isn’t just pure art. I think it’s important to acknowledge that difference, that this isn’t just overwhelmingly and only a positive technology. It is a powerful technology that can be used for good and it can also be used for really bad things. So that’s one big difference to stress.=.

But unlike Michael Jackson, the people, companies, organizations that are creating this technology, releasing it out into the world are still here.

So what do we do?

I genuinely don’t know and certainly won’t pretend to have all the answers, but I do know that there are some places we can go for guidance.

I feel so incredibly fortunate to have come of age at the same time that the World Wide Web was coming of age as well.

And all these years later—after all of the strange and terrible left turns and bad things that have happened on the web and with the web—the foundational principles, ideals, and values of the World Wide Web are still there.

They’re still intact. They are still a noble pursuit. They are still the vision. They’re still the North Star all these years later. All we have to do is realign ourselves and reintroduce that vision.

Those principles, those values, that commitment to betterment, that commitment to making the world a better place for more people using technology—has to be rekindled. They have to be translated into this new technology landscape. We have to reclaim that because the stakes are fucking high.

We have to align our technology to work in pursuit of the betterment of humankind and all life on this planet, and for the planet itself.

So obviously, there’s a lot of different actions we could take.

We can advocate. We can complain. We can apply pressure—although it seems sometimes quite futile to try to convince certain companies, organizations, and people to suddenly grow a conscience, grow a moral center.

But there’s lots of things we can do.

We can be adopting and looking for healthier alternatives. We could invent healthier alternatives, right?

Another important thing to do is to really take the time to reflect on and establish your own values and principles and how you wield this powerful new design medium.

And not just to do that on an individual level, but with all the other people that you create with.

What do you care about? What are you working towards? What are lines you won’t cross? What is all of this in pursuit of?

In the course we’re putting together, we lead with these values and principles and talk about the importance of being human-centric and working towards the betterment of humankind.

A slide that has words laid out like bricks: humanity, safety, integrity, responsibility, nuance, quality, accessibility, foundations, context, collaboration, curiousity, multiplicity, practicality, durability

Not replacing people, but rather enhancing people. Being responsible. Being ethical. Thinking about sustainability, both in terms of environmental impact, but also in the durability of the things that we create, right? We need to care about quality. We need to care about the impacts that our work has on the world.

We need values and principles to guide every step of the way, especially as the models are changing every day, the tool landscape is this fast moving frenzied landscape and it’s exhausting, and we’re getting pulled in so many different directions. Values and principles serve as a solid foundation to stand on as the fast moving currents of this landscape continue to evolve with breakneck speed.

It doesn’t matter how you go about establishing your values and principles about this moment in time, but it’s fucking imperative that you have a perspective.

And that leads me to my last favor to ask of you, which is that as somebody who is creating and making and putting things out into the world, really recommit to whatever that is—whatever energy you’re putting out into the world—to have it be in pursuit of the betterment of humankind, of life on this planet, of nature, of everything.

This is a really consequential moment. I fundamentally believe in us. I fundamentally believe in humanity.

And so it’s gonna take us all—in our collective actions and decisions—to design a better world.

So let’s have at it.

Thanks.

Read the whole story
alvinashcraft
53 minutes ago
reply
Pennsylvania, USA
Share this story
Delete

Autoresearch, Agent Loops and the Future of Work

1 Share
From: AIDailyBrief
Duration: 21:05
Views: 628

Andrej Karpathy's Autoresearch demonstrates autonomous agent loops: agents edit training code, run fixed five-minute experiments, and commit only changes improving a single validation metric. Connections explored include the Ralph Wiggum iterative loop and multi-agent collaborative research. Applications range from LLM training and code generation to advertising and product experimentation, plus new high-level skills like evaluation design and programming agent memos.

The AI Daily Brief helps you understand the most important news and discussions in AI.
Subscribe to the podcast version of The AI Daily Brief wherever you listen: https://pod.link/1680633614
Get it ad free at http://patreon.com/aidailybrief
Learn more about the show https://aidailybrief.ai/

Read the whole story
alvinashcraft
54 minutes ago
reply
Pennsylvania, USA
Share this story
Delete

Foundry IQ: Unlocking Knowledge for Your Agents

1 Share
From: Microsoft Developer
Views: 0

The first episode of The IQ Series features Pablo Castro introducing Foundry IQ. Ayca and Farzad walk through the idea of a unified knowledge layer for agents and explain its core components. The episode closes with Tomomi’s doodles, showing how Foundry IQ fits into the broader agent architecture.

Read the whole story
alvinashcraft
54 minutes ago
reply
Pennsylvania, USA
Share this story
Delete

Agent Resources and Tools

1 Share

Resources and Tools

An AI agent, by itself, can’t actually do anything besides chat. And while it can be fun to have philisophical debates in isolation for a while, eventually we all want to get about the business of actually doing things.

Agents do things by calling functions or tools. These functions and tools are provided to the agent (the LLM) by the hosting runtime. For example, RockBot is a host that provides a set of tools that can be used by the AI agent.

The RockBot framework provides access to a whole set of subsystems, each of which provides tools and guidance to the agent on using the tools. The RockBot agent uses all the features of the framework, plus other capabilities.

You can think of these tools as being in logical groups by subsystem.

Tool Discovery

Each subsystem provided by the RockBot framework has the ability to provide its own base-level tool guide to the agent. This way the agent immediately knows how to use things like memory, skills, MCP servers, etc.

  • list_tool_guides, get_tool_guide

When a subsystem is registered during app startup, its tool guide is added to the master list of guides, making it easy for the agent to get the appropriate guide to function. Skills layer on top of these guides, allowing the agent to learn over time.

Scheduling Tools

These are tools that allow the agent to schedule tasks to run at specific times.

  • schedule_task — Schedule one-time or recurring tasks (cron)
  • cancel_scheduled_task — Cancel a scheduled task by name
  • list_scheduled_tasks — List all scheduled tasks

Subagent Tools

These tools allow the primary RockBot agent to spin off subagents to work in the background. Each subagent has access to the same tools and skills, but has its own context memory and a slice of working memory for sharing information with the primary and other subagents.

  • spawn_subagent — Spawn an isolated subagent for complex/long-running tasks
  • cancel_subagent — Cancel a running subagent by task ID
  • list_subagents — List active subagent tasks
  • report_progress (subagent-only) — Report progress back to the primary agent

Agent-to-Agent (A2A) Tools

Sometimes a subagent isn’t enough, and it is necessary to interact with other autonomous agents in the environment. These tools allow the RockBot agent to interact with other autonomous agents.

  • invoke_agent — Call an external A2A agent by name and skill
  • list_known_agents — List all known external agents

In a business environment, you can imagine how your agent might interact with other agents that help to manage sales, inventory, production, delivery, finance, and other automation across your organization.

Agent Examples

In the RockBot repo there are two agents to demonstrate how to use the RockBot framework to build agents other than RockBot itself. The first is as simple as you can get. The second is a real external agent that the RockBot agent uses when asked to do any research.

  1. Sample agent - Agent that echoes any text sent
  2. Research agent - Agent that researches a topic and returns consolidated results

Memory Tools (long-term)

RockBot maintains long-term memory, and these are the tools that support that memory concept.

  • save_memory, search_memory, delete_memory, list_categories

ℹ️ There are no explicit tools for conversational memory because conversational memory is always part of the agent’s context window. Other memories are brought into context on-demand.

Working Memory Tools (session scratch space)

RockBot also maintains working memory, and these are the tools for interacting with that memory.

  • save_to_working_memory, get_from_working_memory, delete_from_working_memory, list_working_memory, search_working_memory

ℹ️ As you can see, the RockBot framework and agent have three levels of memory: conversational, working, and long-term. This provides a rich way to manage context window usage, subsystem interactions, and long-term concepts in an elegant manner.

Skill Tools

RockBot has skills, and these are the tools it uses to interact with its own set of skills.

  • get_skill, list_skills, save_skill, delete_skill

Skills develop over time automatically, sometimes refining the base-level subsystem tool guides, other times being created out of whole cloth by the agent as it learns.

Rules & Configuration Tools

These are tools used to manage rules that alter the agent’s behavior. These rules are in addition to the built-in soul.md and directives.md files that are central to the agent’s identity.

  • add_rule, remove_rule, list_rules, set_timezone

Web Tools

These are tools that allow the agent to search (using a Brave API key) and retrieve web pages.

  • web_search — Search the web, returning titles/URLs/snippets
  • web_browse — Fetch a page and return content as Markdown (with chunking)

MCP Integration Tools

These are tools that allow the agent to find and use MCP servers without having those MCP servers and tools always consuming large amounts of context memory.

  • mcp_list_services — List connected MCP servers
  • mcp_get_service_details — Get tool details for an MCP server
  • mcp_invoke_tool — Execute a tool on an MCP server
  • mcp_register_server — Register a new MCP server at runtime
  • mcp_unregister_server — Remove an MCP server at runtime
  • Plus all tools dynamically registered from configured MCP servers

ℹ️ These tools are a built-in equivalent to the separate mcp-aggregator project.

MCP Server Examples

In my current live environment, here are some of the MCP servers I have registered with the RockBot agent.

  1. calendar-mcp - access all my email and calendar accounts
  2. onedrive-personal - personal OneDrive
  3. onedrive-marimer - work OneDrive
  4. todo-mcp - a simple to-do list implementation
  5. github - read/write to my GitHub repos
  6. routing-stats - get info on RockBot LLM routing
  7. openrouter - get info on openrouter.ai usage
  8. azure-foundry - get info on Azure Foundry usage

Script Execution

When an agent needs to run some code, it uses these tools to execute scripts. The script executes in an ephemeral container that runs in a separate Kubernetes namespace.

  • execute_python_script — Run Python in a secure ephemeral container

In the future we may support other types of script, such as TypeScript or bash. Python was the obvious start point given its broad use, flexibility, and how well LLMs can generate Python code.

Conclusion

Agents without tools aren’t very useful in any real-world scenarios. The RockBot framework provides a range of subsystems you can use when building an agent, and each subsystem provides a set of tools to the agent.

The RockBot agent itself has access to all these subsystems and associated tools. And some subsystems, like A2A, MCP, web, and scripts, open the door for the agent do do virtually anything by collaborating with other agents or invoking external tools, APIs, or code.

Read the whole story
alvinashcraft
54 minutes ago
reply
Pennsylvania, USA
Share this story
Delete

Zoho MCP: Launching the future of work

1 Share
Picture your SDR’s Monday morning.A deal just closed. Normally that means: update the CRM record, create a Books invoice, open a Desk ticket for onboarding, send a welcome email from Mail, and message the CS lead on Slack. Those five apps can take you fifteen minutes, and the process repeats with every other deal that comes in. What if you could...

Read the whole story
alvinashcraft
54 minutes ago
reply
Pennsylvania, USA
Share this story
Delete

1.0.3

1 Share

2026-03-09

  • Enable alternate screen buffer by default for staff users
  • Extensions are now available as an experimental feature — ask Copilot to write custom tools and hooks for itself using @github/copilot-sdk
  • Document GH_HOST, HTTP_PROXY, HTTPS_PROXY, NO_COLOR, and NO_PROXY environment variables in help
  • Read MCP server configuration from .devcontainer/devcontainer.json
  • Add --binary-version flag to query the CLI binary version without launching
  • Add /restart command to hot restart the CLI while preserving your session
  • Background task notifications display in timeline with expandable detail
  • Type 'quit' to exit the CLI, in addition to 'exit'
  • Add extraKnownMarketplaces repository setting to replace marketplaces
  • Add Windows Terminal support to /terminal-setup command
  • /reset-allowed-tools now fully undoes /allow-all and re-triggers the autopilot permission dialog
  • Improved handling of batched queries in the SQL tool
  • Login flow no longer hangs on Ubuntu when system keyring is unresponsive
  • Terminal is properly reset when CLI crashes unexpectedly
  • Table disables borders in screen reader mode to prevent announcing decorative characters
  • MCP servers with non-conforming outputSchema are now accessible
  • /plugin update now works for GitHub-installed plugins
  • /add-dir directories persist across session changes like /clear and /resume
  • Prevent env command from being treated as safe to allow without approval
  • Placeholder text color displays correctly when wrapping in narrow terminals
  • /plugin update now works with marketplaces defined in project settings
  • Retry status messages now display to show progress during server error recovery
  • Show loading spinner in diff mode while fetching changes
  • Suppress /init suggestion when .github/instructions/ contains instructions
  • Rename merge_strategy config to mergeStrategy for consistency
  • Suppress unknown field warnings in skill and command frontmatter
  • Trust safe sed commands to run without confirmation
Read the whole story
alvinashcraft
55 minutes ago
reply
Pennsylvania, USA
Share this story
Delete
Next Page of Stories