diff --git a/steps/selectfirstfile.cwl b/steps/selectfirstfile.cwl
new file mode 100644
index 0000000000000000000000000000000000000000..b928a3ffdc95e6ded6dfa0bd9f11db36500900bd
--- /dev/null
+++ b/steps/selectfirstfile.cwl
@@ -0,0 +1,19 @@
+class: ExpressionTool
+cwlVersion: v1.0
+id: select_first_file
+inputs:
+  - id: inputs
+    type: File[]
+    doc: input files
+outputs:
+  - id: output
+    type: File
+
+expression: |
+  ${
+    return {'output': inputs.inputs[0]}
+  }
+label: FileSelector
+
+requirements:
+  - class: InlineJavascriptRequirement