# CommandSpec Properties

- Package: [Aspire.TypeSystem](/reference/api/csharp/aspire.typesystem.md)
- Type: [CommandSpec](/reference/api/csharp/aspire.typesystem/commandspec.md)
- Kind: `Properties`
- Members: `3`

Specifies a command to execute.

## Args

- Name: `Args`
- Modifiers: `get; init`
- Returns: `string[]`
- Source: [GitHub](https://github.com/microsoft/aspire/blob/a3766e994fd2cba86c8ac60b8a80268cab7e6383/src/Aspire.TypeSystem/RuntimeSpec.cs)

Gets the arguments for the command. Supports placeholders: {appHostFile}, {appHostDir}, {args}

```csharp
public string[] Args { get; init; }
```

## Command

- Name: `Command`
- Modifiers: `get; init`
- Returns: `string`
- Source: [GitHub](https://github.com/microsoft/aspire/blob/a3766e994fd2cba86c8ac60b8a80268cab7e6383/src/Aspire.TypeSystem/RuntimeSpec.cs)

Gets the command to execute (e.g., "npm", "npx", "python").

```csharp
public string Command { get; init; }
```

## EnvironmentVariables

- Name: `EnvironmentVariables`
- Modifiers: `nullable` `get; init`
- Returns: `Dictionary<string, string>`
- Source: [GitHub](https://github.com/microsoft/aspire/blob/a3766e994fd2cba86c8ac60b8a80268cab7e6383/src/Aspire.TypeSystem/RuntimeSpec.cs)

Gets the environment variables to set when executing the command. These are merged with any environment variables provided by the caller.

```csharp
public Dictionary<string, string>? EnvironmentVariables { get; init; }
```
