
Security News
Attackers Are Hunting High-Impact Node.js Maintainers in a Coordinated Social Engineering Campaign
Multiple high-impact npm maintainers confirm they have been targeted in the same social engineering campaign that compromised Axios.
This is the main package for ARC Agents, it
is focused on creating agents that learn via imitation or reinforcement learning. The primary
use case for arc-agents is creating intelligent agents that game learn how to play games.
Demos coming soon!
You can install the package using NPM as follows:
npm install arc-agents
In order to create an agent, we have to import the AgentFactory and call either the createDemoAgent
or createAgent methods. In either case, we have the ability to create a randomly initialized model
or load in a pre-trained model. More details are provided in the docs.
To get the full capabilities of ARC, we require developers to onboard on our platform. However, if a developer just wants to test out ARC, we allow them to create a demo agent for quick prototyping. This way developers can see how to incorporate ARC into their game loop before onboarding and registering a model architecture.
const { AgentFactory } = require("arc-agents");
const modelData = {
config: {
inputDim: 5,
neurons: [12, 6],
actionOrder: ["action 1", "action 2"],
modelType: "neural-network"
}
}
const agent = AgentFactory.createDemoAgent(modelData)
With the demo agent, we defined some hyperparameters for the neural network, but in the production agents, developers first have to register their architecture on our dashboard. The registration process involves defining all the architecture hyperparameters. Once registered, we simply provide the architecture id, and it will create the model scaffolding using the hyperparemeters that were defined. This allows for the easy creation of many models using the same set of hyperparams.
const { AgentFactory } = require("arc-agents")
AgentFactory.setGameId("game-id")
AgentFactory.setApiKey("training-api-key")
const architectureId = "perfect-architecture-id"
const agentName = "Agent A.G.N.E.S."
const agent = AgentFactory.createAgent("reinforcement", architectureId, agentName)
await agent.initialize()
The most basic methods that are called when incorporating ARC agents into a gameloop is selectAction
and collect.
In order to take an action in the game, call the selectAction method, where the input is
a 2D array.
const action = agent.selectAction(state)
To collect data, call the collect method. At a minimum, the data object must have the current
state and the action selected (as a one-hot encoded vector). Additionally, you can provide more
info which can be useful for reward shaping.
agent.collect({ state, action, info })
Before creating an agent, we must register its architecture. It's easier to register via our dashboard, but we also allow developers to register model architectures through code as well.
const { Registry } = require("arc-agents")
Registry.setApiKey("admin-api-key")
const registry = new Registry("game-id")
const registryInputs = {
modelType: "neural-network",
architectureId: "perfect-architecture-id",
numberOfStates: 10,
possibleActions: { direction: ["up", "down", "idle"] }
}
await registry.register(registryInputs)
FAQs
A library for creating and deploying gaming agents at scale
We found that arc-agents demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 0 open source maintainers collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Security News
Multiple high-impact npm maintainers confirm they have been targeted in the same social engineering campaign that compromised Axios.

Security News
Axios compromise traced to social engineering, showing how attacks on maintainers can bypass controls and expose the broader software supply chain.

Security News
Node.js has paused its bug bounty program after funding ended, removing payouts for vulnerability reports but keeping its security process unchanged.