# ProcessCommandSpec Properties

- Package: [Aspire.Hosting](/reference/api/csharp/aspire.hosting.md)
- Type: [ProcessCommandSpec](/reference/api/csharp/aspire.hosting/processcommandspec.md)
- Kind: `Properties`
- Members: `7`

Describes a local process that is started when a process-backed resource command executes.

## Arguments

- Name: `Arguments`
- Modifiers: `get; init`
- Returns: `IReadOnlyList<string>`
- Source: [GitHub](https://github.com/microsoft/aspire/blob/a3766e994fd2cba86c8ac60b8a80268cab7e6383/src/Aspire.Hosting/ApplicationModel/ProcessCommandSpec.cs)

Gets or sets the command-line arguments for the process.

```csharp
public IReadOnlyList<string> Arguments { get; init; }
```

## Remarks

Arguments are passed using `ProcessStartInfo.ArgumentList` so that each item is escaped according to the current platform's process-start rules.

## EnvironmentVariables

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

Gets or sets the environment variables to set for the process.

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

## ExecutablePath

- Name: `ExecutablePath`
- Modifiers: `get`
- Returns: `string`
- Source: [GitHub](https://github.com/microsoft/aspire/blob/a3766e994fd2cba86c8ac60b8a80268cab7e6383/src/Aspire.Hosting/ApplicationModel/ProcessCommandSpec.cs#L25)

Gets the executable path or command name to start.

```csharp
public string ExecutablePath { get; }
```

## Remarks

Command names without directory separators are resolved from the AppHost process PATH before starting the process.

## InheritEnvironmentVariables

- Name: `InheritEnvironmentVariables`
- Modifiers: `get; init`
- Returns: `bool`
- Source: [GitHub](https://github.com/microsoft/aspire/blob/a3766e994fd2cba86c8ac60b8a80268cab7e6383/src/Aspire.Hosting/ApplicationModel/ProcessCommandSpec.cs)

Gets or sets a value indicating whether the process should inherit the current environment variables.

```csharp
public bool InheritEnvironmentVariables { get; init; }
```

## KillEntireProcessTree

- Name: `KillEntireProcessTree`
- Modifiers: `get; init`
- Returns: `bool`
- Source: [GitHub](https://github.com/microsoft/aspire/blob/a3766e994fd2cba86c8ac60b8a80268cab7e6383/src/Aspire.Hosting/ApplicationModel/ProcessCommandSpec.cs)

Gets or sets a value indicating whether the entire process tree should be killed when the process is disposed.

```csharp
public bool KillEntireProcessTree { get; init; }
```

## StandardInputContent

- Name: `StandardInputContent`
- Modifiers: `nullable` `get; init`
- Returns: `string?`
- Source: [GitHub](https://github.com/microsoft/aspire/blob/a3766e994fd2cba86c8ac60b8a80268cab7e6383/src/Aspire.Hosting/ApplicationModel/ProcessCommandSpec.cs)

Gets or sets standard input content to write to the process after it starts.

```csharp
public string? StandardInputContent { get; init; }
```

## WorkingDirectory

- Name: `WorkingDirectory`
- Modifiers: `nullable` `get; init`
- Returns: `string?`
- Source: [GitHub](https://github.com/microsoft/aspire/blob/a3766e994fd2cba86c8ac60b8a80268cab7e6383/src/Aspire.Hosting/ApplicationModel/ProcessCommandSpec.cs)

Gets or sets the working directory for the process.

```csharp
public string? WorkingDirectory { get; init; }
```
