task.json
VSCode Task file
| Type | object |
|---|---|
| File match |
task.json
tasks.json
|
| Schema URL | https://catalog.lintel.tools/schemas/schemastore/task-json/latest.json |
| Source | https://www.schemastore.org/task.json |
Validate with Lintel
npx @lintel/lintel check
Properties
The arguments passed to the command. Can be omitted.
The command to be executed. Can be an external program or a shell command.
Specifies whether a global command is a background task.
8 nested properties
The arguments passed to the command. Can be omitted.
The command to be executed. Can be an external program or a shell command.
Specifies whether a global command is a background task.
Options to be passed to the external program or shell
3 nested properties
The current working directory of the executed program or shell. If omitted the current workspace's root is used.
The environment of the executed program or shell. If omitted the parent process' environment is used.
Configuration of the shell when task type is shell
2 nested properties
The arguments to be passed to the shell executable to run in command mode (e.g ['-c'] for bash or ['/S', '/C'] for cmd.exe).
The shell to use.
7 nested properties
Controls whether the terminal is cleared before this task is run.
Defaults to false.
Controls whether the command associated with the task is echoed
in the user interface. Defaults to true.
Controls whether the panel showing the task output is taking focus.
Defaults to false.
Controls whether the task is executed in a specific terminal group using split panes. Tasks in the same group (specified by a string value) will use split terminals to present instead of a new terminal panel.
Controls if the task panel is used for this task only (dedicated),
shared between tasks (shared) or if a new panel is created on
every task execution (new). Defaults to shared.
Controls whether the task output is reveal in the user interface.
Defaults to always.
Controls whether to show the Terminal will be reused by tasks, press any key to close it message.
The problem matcher to be used if a global command is executed (e.g. no tasks are defined). A tasks.json file can either contain a global problemMatcher property or a tasks property but not both.
The configuration of the available tasks. A tasks.json file can either contain a global problemMatcher property or a tasks property but not both.
The type of a custom task. Tasks of type "shell" are executed inside a shell (e.g. bash, cmd, powershell, ...)
Options to be passed to the external program or shell
3 nested properties
The current working directory of the executed program or shell. If omitted the current workspace's root is used.
The environment of the executed program or shell. If omitted the parent process' environment is used.
Configuration of the shell when task type is shell
2 nested properties
The arguments to be passed to the shell executable to run in command mode (e.g ['-c'] for bash or ['/S', '/C'] for cmd.exe).
The shell to use.
8 nested properties
The arguments passed to the command. Can be omitted.
The command to be executed. Can be an external program or a shell command.
Specifies whether a global command is a background task.
Options to be passed to the external program or shell
3 nested properties
The current working directory of the executed program or shell. If omitted the current workspace's root is used.
The environment of the executed program or shell. If omitted the parent process' environment is used.
Configuration of the shell when task type is shell
2 nested properties
The arguments to be passed to the shell executable to run in command mode (e.g ['-c'] for bash or ['/S', '/C'] for cmd.exe).
The shell to use.
7 nested properties
Controls whether the terminal is cleared before this task is run.
Defaults to false.
Controls whether the command associated with the task is echoed
in the user interface. Defaults to true.
Controls whether the panel showing the task output is taking focus.
Defaults to false.
Controls whether the task is executed in a specific terminal group using split panes. Tasks in the same group (specified by a string value) will use split terminals to present instead of a new terminal panel.
Controls if the task panel is used for this task only (dedicated),
shared between tasks (shared) or if a new panel is created on
every task execution (new). Defaults to shared.
Controls whether the task output is reveal in the user interface.
Defaults to always.
Controls whether to show the Terminal will be reused by tasks, press any key to close it message.
The problem matcher to be used if a global command is executed (e.g. no tasks are defined). A tasks.json file can either contain a global problemMatcher property or a tasks property but not both.
The configuration of the available tasks. A tasks.json file can either contain a global problemMatcher property or a tasks property but not both.
The type of a custom task. Tasks of type "shell" are executed inside a shell (e.g. bash, cmd, powershell, ...)
7 nested properties
Controls whether the terminal is cleared before this task is run.
Defaults to false.
Controls whether the command associated with the task is echoed
in the user interface. Defaults to true.
Controls whether the panel showing the task output is taking focus.
Defaults to false.
Controls whether the task is executed in a specific terminal group using split panes. Tasks in the same group (specified by a string value) will use split terminals to present instead of a new terminal panel.
Controls if the task panel is used for this task only (dedicated),
shared between tasks (shared) or if a new panel is created on
every task execution (new). Defaults to shared.
Controls whether the task output is reveal in the user interface.
Defaults to always.
Controls whether to show the Terminal will be reused by tasks, press any key to close it message.
The problem matcher to be used if a global command is executed (e.g. no tasks are defined). A tasks.json file can either contain a global problemMatcher property or a tasks property but not both.
The configuration of the available tasks. A tasks.json file can either contain a global problemMatcher property or a tasks property but not both.
The type of a custom task. Tasks of type "shell" are executed inside a shell (e.g. bash, cmd, powershell, ...)
The configuration's version number
8 nested properties
The arguments passed to the command. Can be omitted.
The command to be executed. Can be an external program or a shell command.
Specifies whether a global command is a background task.
Options to be passed to the external program or shell
3 nested properties
The current working directory of the executed program or shell. If omitted the current workspace's root is used.
The environment of the executed program or shell. If omitted the parent process' environment is used.
Configuration of the shell when task type is shell
2 nested properties
The arguments to be passed to the shell executable to run in command mode (e.g ['-c'] for bash or ['/S', '/C'] for cmd.exe).
The shell to use.
7 nested properties
Controls whether the terminal is cleared before this task is run.
Defaults to false.
Controls whether the command associated with the task is echoed
in the user interface. Defaults to true.
Controls whether the panel showing the task output is taking focus.
Defaults to false.
Controls whether the task is executed in a specific terminal group using split panes. Tasks in the same group (specified by a string value) will use split terminals to present instead of a new terminal panel.
Controls if the task panel is used for this task only (dedicated),
shared between tasks (shared) or if a new panel is created on
every task execution (new). Defaults to shared.
Controls whether the task output is reveal in the user interface.
Defaults to always.
Controls whether to show the Terminal will be reused by tasks, press any key to close it message.
The problem matcher to be used if a global command is executed (e.g. no tasks are defined). A tasks.json file can either contain a global problemMatcher property or a tasks property but not both.
The configuration of the available tasks. A tasks.json file can either contain a global problemMatcher property or a tasks property but not both.
The type of a custom task. Tasks of type "shell" are executed inside a shell (e.g. bash, cmd, powershell, ...)
Definitions
A description to track the start and end of a background task.
If set to true the watcher is in active mode when the task starts. This is equals of issuing a line that matches the beginPattern.
If matched in the output the start of a background task is signaled.
If matched in the output the end of a background task is signaled.
The arguments passed to the command. Can be omitted.
The command to be executed. Can be an external program or a shell command.
Specifies whether a global command is a background task.
Options to be passed to the external program or shell
3 nested properties
The current working directory of the executed program or shell. If omitted the current workspace's root is used.
The environment of the executed program or shell. If omitted the parent process' environment is used.
Configuration of the shell when task type is shell
2 nested properties
The arguments to be passed to the shell executable to run in command mode (e.g ['-c'] for bash or ['/S', '/C'] for cmd.exe).
The shell to use.
7 nested properties
Controls whether the terminal is cleared before this task is run.
Defaults to false.
Controls whether the command associated with the task is echoed
in the user interface. Defaults to true.
Controls whether the panel showing the task output is taking focus.
Defaults to false.
Controls whether the task is executed in a specific terminal group using split panes. Tasks in the same group (specified by a string value) will use split terminals to present instead of a new terminal panel.
Controls if the task panel is used for this task only (dedicated),
shared between tasks (shared) or if a new panel is created on
every task execution (new). Defaults to shared.
Controls whether the task output is reveal in the user interface.
Defaults to always.
Controls whether to show the Terminal will be reused by tasks, press any key to close it message.
The problem matcher to be used if a global command is executed (e.g. no tasks are defined). A tasks.json file can either contain a global problemMatcher property or a tasks property but not both.
The configuration of the available tasks. A tasks.json file can either contain a global problemMatcher property or a tasks property but not both.
The type of a custom task. Tasks of type "shell" are executed inside a shell (e.g. bash, cmd, powershell, ...)
Options to be passed to the external program or shell
The current working directory of the executed program or shell. If omitted the current workspace's root is used.
The environment of the executed program or shell. If omitted the parent process' environment is used.
Configuration of the shell when task type is shell
2 nested properties
The arguments to be passed to the shell executable to run in command mode (e.g ['-c'] for bash or ['/S', '/C'] for cmd.exe).
The shell to use.
Controls whether the terminal is cleared before this task is run.
Defaults to false.
Controls whether the command associated with the task is echoed
in the user interface. Defaults to true.
Controls whether the panel showing the task output is taking focus.
Defaults to false.
Controls whether the task is executed in a specific terminal group using split panes. Tasks in the same group (specified by a string value) will use split terminals to present instead of a new terminal panel.
Controls if the task panel is used for this task only (dedicated),
shared between tasks (shared) or if a new panel is created on
every task execution (new). Defaults to shared.
Controls whether the task output is reveal in the user interface.
Defaults to always.
Controls whether to show the Terminal will be reused by tasks, press any key to close it message.
A description of a problem matcher that detects problems in build output.
A description to track the start and end of a background task.
3 nested properties
If set to true the watcher is in active mode when the task starts. This is equals of issuing a line that matches the beginPattern.
If matched in the output the start of a background task is signaled.
If matched in the output the end of a background task is signaled.
The name of a base problem matcher to use. If specified the base problem matcher will be used as a template and properties specified here will replace properties of the base problem matcher
Defines how filename reported in a problem pattern should be read. Valid values are:
- "absolute": the filename is always treated absolute.
- "relative": the filename is always treated relative to the current working directory. This is the default.
- ["relative", "path value"]: the filename is always treated relative to the given path value.
- "autodetect": the filename is treated relative to the current workspace directory, and if the file does not exist, it is treated as absolute.
- ["autodetect", "path value"]: the filename is treated relative to the given path value, and if it does not exist, it is treated as absolute.
The owner of the produced VS Code problem. This is typically the identifier of a VS Code language service if the problems are to be merged with the one produced by the language service or 'external'. Defaults to 'external' if omitted.
The name of a predefined problem pattern, the inline definition of a problem pattern or an array of problem patterns to match problems spread over multiple lines.
The severity of the VS Code problem produced by this problem matcher.
Valid values are: "error": to produce errors. "warning": to produce warnings. "info": to produce infos.
The value is used if a pattern doesn't specify a severity match group. Defaults to "error" if omitted.
The match group index of the problem's code.
Defaults to undefined. No code is captured.
The match group index of the problem's column in the source file.
The match group index of the problem's end column in the source file.
Defaults to undefined. No end column is captured.
The match group index of the problem's end line in the source file.
Defaults to undefined. No end line is captured.
The match group index of the filename.
Whether the pattern matches a problem for the whole file or for a location inside a file.
Defaults to "location".
The match group index of the problem's line in the source file. Can only be omitted if location is specified.
The match group index of the problem's location. Valid location patterns are: (line), (line,column) and (startLine,startColumn,endLine,endColumn). If omitted the line and column properties are used.
Specifies if the last pattern in a multi line problem matcher should loop as long as it does match a line consequently. Only valid on the last problem pattern in a multi line problem matcher.
The match group index of the message. Defaults to 0.
The regular expression to find a problem in the console output of an executed task.
The match group index of the problem's severity.
Defaults to undefined. In this case the problem matcher's severity is used.
A description to when and how run a task.
Controls how variables are evaluated when a task is executed through
the Rerun Last Task command.
The default is true, meaning that variables will be re-evaluated when
a task is rerun. When set to false, the resolved variable values from
the previous run of the task will be used.
Specifies when a task is run.
Valid values are: "default": The task will only be run when executed through the Run Task command. "folderOpen": The task will be run when the containing folder is opened.
The description of a task.
Additional arguments passed to the command. Should be used if type is "process".
The command to execute. If the type is "shell" it should be the full command line including any additional arguments passed to the command.
Defines the group to which this task belongs. Also supports to mark a task as the default task in a group.
Whether the executed command is kept alive and runs in the background.
The task's name
7 nested properties
Controls whether the terminal is cleared before this task is run.
Defaults to false.
Controls whether the command associated with the task is echoed
in the user interface. Defaults to true.
Controls whether the panel showing the task output is taking focus.
Defaults to false.
Controls whether the task is executed in a specific terminal group using split panes. Tasks in the same group (specified by a string value) will use split terminals to present instead of a new terminal panel.
Controls if the task panel is used for this task only (dedicated),
shared between tasks (shared) or if a new panel is created on
every task execution (new). Defaults to shared.
Controls whether the task output is reveal in the user interface.
Defaults to always.
Controls whether to show the Terminal will be reused by tasks, press any key to close it message.
The problem matcher(s) to use to capture problems in the tasks output.
A description to when and how run a task.
2 nested properties
Controls how variables are evaluated when a task is executed through
the Rerun Last Task command.
The default is true, meaning that variables will be re-evaluated when
a task is rerun. When set to false, the resolved variable values from
the previous run of the task will be used.
Specifies when a task is run.
Valid values are: "default": The task will only be run when executed through the Run Task command. "folderOpen": The task will be run when the containing folder is opened.
The type of a custom task. Tasks of type "shell" are executed inside a shell (e.g. bash, cmd, powershell, ...)