diff --git a/ChangeLog.md b/ChangeLog.md
--- a/ChangeLog.md
+++ b/ChangeLog.md
@@ -1,5 +1,9 @@
 # Version history of koji-tool
 
+## 1.0.1 (2023-05-08)
+- 'install' now supports multiple arch options (#4)
+- 'find': interpret small number as a limit (default still 10 results)
+
 ## 1.0 (2023-04-24)
 - 'builds': fix --install to use nvr instead of taskid
 - 'install': allow installing from an ongoing build; add kojiGetBuildTaskRPMs
diff --git a/README.md b/README.md
--- a/README.md
+++ b/README.md
@@ -23,7 +23,7 @@
 ## Commands
 ```shellsession
 $ koji-tool --version
-1.0
+1.0.1
 $ koji-tool --help
 Query and track Koji tasks, and install rpms from Koji.
 
@@ -47,7 +47,7 @@
   find                     Simple quick common queries using words like: [my,
                            last, fail, complete, current, build, detail,
                            install, tail, notail, hwinfo, x86_64, PACKAGE,
-                           USER\'s]
+                           USER\'s, LIMIT]
 ```
 
 ## koji-tool builds
@@ -342,6 +342,7 @@
 x86_64 aarch64 ppc64le s390x i686 armv7hl
 PACKAGE
 USER\'s
+LIMIT
 
 ```
 
diff --git a/koji-tool.cabal b/koji-tool.cabal
--- a/koji-tool.cabal
+++ b/koji-tool.cabal
@@ -1,5 +1,5 @@
 name:                koji-tool
-version:             1.0
+version:             1.0.1
 synopsis:            Koji CLI tool for querying tasks and installing builds
 description:
         koji-tool is a CLI interface to Koji with commands to query
@@ -24,7 +24,7 @@
                      || == 8.10.7
                      || == 9.0.2
                      || == 9.2.7
-                     || == 9.4.4
+                     || == 9.4.5
 
 source-repository head
   type:                git
diff --git a/src/Builds.hs b/src/Builds.hs
--- a/src/Builds.hs
+++ b/src/Builds.hs
@@ -186,7 +186,7 @@
       Tasks.tasksCmd (Just hub) (Tasks.QueryOpts Nothing 7 [] [] Nothing Nothing False Nothing) False False False Nothing (Tasks.Parent taskid)
     whenJust minstall $ \installopts -> do
       putStrLn ""
-      installCmd False debug No (Just hub) Nothing False False False Nothing Nothing Nothing Nothing installopts Nothing ReqNVR [showNVR (buildNVR build)]
+      installCmd False debug No (Just hub) Nothing False False False Nothing [] Nothing Nothing installopts Nothing ReqNVR [showNVR (buildNVR build)]
 
 formatBuildResult :: String -> Bool -> TimeZone -> BuildResult -> [String]
 formatBuildResult hub ended tz (BuildResult nvr state buildid mtaskid start mendtime) =
diff --git a/src/Find.hs b/src/Find.hs
--- a/src/Find.hs
+++ b/src/Find.hs
@@ -13,7 +13,7 @@
 import Distribution.Koji
     ( BuildState(BuildBuilding, BuildFailed, BuildComplete),
       TaskState(TaskOpen, TaskFailed, TaskClosed) )
-import SimpleCmd (error')
+import SimpleCmd (error', (+-+))
 
 import qualified Builds
 import qualified Tasks
@@ -41,7 +41,7 @@
 
 wordsList :: ([String] -> String) -> [String]
 wordsList f =
-  map (f . findWords) [minBound..] ++ ["PACKAGE","USER\\'s"]
+  map (f . findWords) [minBound..] ++ ["PACKAGE","USER\\'s","LIMIT"]
 
 allWords :: [String]
 allWords = concatMap findWords [minBound..]
@@ -63,7 +63,7 @@
                             unwords more
       archs = if hasWord Arch
               then filter (`elem` findWords Arch) args else []
-      limit = if hasWord Limit then 1 else 10
+      defaultlimit = if hasWord Limit then 1 else 10
       failure = hasWord Failure
       complete = hasWord Complete
       current = hasWord Current
@@ -73,11 +73,17 @@
       tail' = hasWord Tail
       notail = hasWord NoTail
       hwinfo = hasWord Hwinfo
-      mpkg =
+      (limit,mpkg) =
         case removeUsers (args \\ allWords) of
-          [] -> Nothing
+          [] -> (defaultlimit, Nothing)
+          [num] | all isDigit num && not (hasWord Limit) ->
+                  let number = read num
+                  in if number < 1000
+                     then (number, Nothing)
+                     else error' $ "is" +-+ num +-+
+                          "an id? Use 'tasks' for very large limits"
           -- FIXME allow pattern?
-          [pkg] | all isPkgNameChar pkg -> Just pkg
+          [pkg] | all isPkgNameChar pkg -> (defaultlimit, Just pkg)
           other ->
             error' $
             "you can only specify one package - too many unknown words: " ++
diff --git a/src/Install.hs b/src/Install.hs
--- a/src/Install.hs
+++ b/src/Install.hs
@@ -103,10 +103,10 @@
 -- FIXME offer to download subpackage deps
 -- FIXME is --check-remote-time really needed?
 installCmd :: Bool -> Bool -> Yes -> Maybe String -> Maybe String -> Bool
-           -> Bool -> Bool -> Maybe PkgMgr -> Maybe String
+           -> Bool -> Bool -> Maybe PkgMgr -> [String]
            -> Maybe ExistingStrategy -> Maybe String -> Select -> Maybe String
            -> Request -> [String] -> IO ()
-installCmd dryrun debug yes mhuburl mpkgsurl listmode latest checkremotetime mmgr march mstrategy mprefix select mdisttag request pkgbldtsks = do
+installCmd dryrun debug yes mhuburl mpkgsurl listmode latest checkremotetime mmgr archs mstrategy mprefix select mdisttag request pkgbldtsks = do
   checkSelection select
   let huburl = maybe fedoraKojiHub hubURL mhuburl
       pkgsurl = fromMaybe (hubToPkgsURL huburl) mpkgsurl
@@ -129,7 +129,7 @@
              -> IO (FilePath, [(Existence,NVRA)])
     kojiRPMs huburl pkgsurl printDlDir bldtask =
       case readMaybe bldtask of
-        Just taskid -> kojiTaskRPMs dryrun debug yes huburl pkgsurl listmode march mstrategy mprefix select checkremotetime printDlDir taskid
+        Just taskid -> kojiTaskRPMs dryrun debug yes huburl pkgsurl listmode archs mstrategy mprefix select checkremotetime printDlDir taskid
         Nothing -> kojiBuildRPMs huburl pkgsurl printDlDir bldtask
 
     kojiBuildRPMs :: String -> String -> IO () -> String
@@ -147,14 +147,15 @@
         [nvr] -> do
           putStrLn $ showNVR nvr ++ "\n"
           bid <- kojiGetBuildID' huburl (showNVR nvr)
-          nvras <- sort . map readNVRA . filter notDebugPkg <$> kojiGetBuildRPMs huburl nvr march bid
+          -- FIXME should we try kojiTaskRPMs first?
+          nvras <- sort . map readNVRA . filter notDebugPkg <$> kojiGetBuildRPMs huburl nvr archs bid
           results <-
             if null nvras
               then do
               mtid <- kojiGetBuildTaskID huburl (showNVR nvr)
               case mtid of
                 Just (TaskId tid) ->
-                  kojiTaskRPMs dryrun debug yes huburl pkgsurl listmode march mstrategy mprefix select checkremotetime printDlDir tid
+                  kojiTaskRPMs dryrun debug yes huburl pkgsurl listmode archs mstrategy mprefix select checkremotetime printDlDir tid
                 Nothing -> error' $ "task id not found for" +-+ showNVR nvr
               else do
               when debug $ mapM_ (putStrLn . showNVRA) nvras
@@ -191,10 +192,10 @@
 notDebugPkg p =
   not ("-debuginfo-" `isInfixOf` p || "-debugsource-" `isInfixOf` p)
 
-kojiTaskRPMs :: Bool -> Bool -> Yes -> String -> String -> Bool -> Maybe String
+kojiTaskRPMs :: Bool -> Bool -> Yes -> String -> String -> Bool -> [String]
              -> Maybe ExistingStrategy -> Maybe String -> Select -> Bool
              -> IO () -> Int -> IO (FilePath, [(Existence,NVRA)])
-kojiTaskRPMs dryrun debug yes huburl pkgsurl listmode march mstrategy mprefix select checkremotetime printDlDir taskid = do
+kojiTaskRPMs dryrun debug yes huburl pkgsurl listmode archs mstrategy mprefix select checkremotetime printDlDir taskid = do
   mtaskinfo <- Koji.getTaskInfo huburl taskid True
   tasks <- case mtaskinfo of
             Nothing -> error' "failed to get taskinfo"
@@ -208,13 +209,10 @@
                       Koji.getTaskChildren huburl taskid True
                     "buildArch" -> return [taskinfo]
                     _ -> error' $ "unsupport method: " ++ method
-  arch <-
-    case march of
-      Nothing -> cmd "rpm" ["--eval", "%{_arch}"]
-      Just ar -> return ar
+  totalarchs <- getArchs archs
   let (archtid,archtask) =
-        case find (selectBuildArch arch) tasks of
-          Nothing -> error' $ "no " ++ arch ++ " task found"
+        case find (selectBuildArch totalarchs) tasks of
+          Nothing -> error' $ "no task found for" +-+ unwords totalarchs
           Just task' ->
             case lookupStruct "id" task' of
               Nothing -> error' "task id not found"
@@ -245,12 +243,12 @@
         printDlDir
       return (subdir,dlRpms)
   where
-    selectBuildArch :: String -> Struct -> Bool
-    selectBuildArch arch t =
-      let march' = lookupStruct "arch" t
-          mmethod = lookupStruct "method" t
-      in march' `elem` [Just arch,Just "noarch"] &&
-         mmethod == Just "buildArch"
+    selectBuildArch :: [String] -> Struct -> Bool
+    selectBuildArch archs' t =
+      case lookupStruct "arch" t of
+        Just arch -> arch `elem` "noarch" : archs' &&
+                     lookupStruct "method" t == Just "buildArch"
+        Nothing -> False
 
     getTaskNVRAs :: Int -> IO [NVRA]
     getTaskNVRAs taskid' =
@@ -265,6 +263,12 @@
               if null few then "0" else few
       in dropSuffix "packages" pkgsurl +/+ "work/tasks/" ++ lastFew +/+ show taskid' +/+ rpm
 
+getArchs :: [String] -> IO [String]
+getArchs archs =
+  case archs of
+    [] -> cmdLines "rpm" ["--eval", "%{_arch}"]
+    ars -> return ars
+
 data Existence = ExistingNVR | ChangedNVR | NotInstalled
   deriving (Eq, Ord, Show)
 
@@ -460,19 +464,16 @@
         NVR n _ -> (n, True)
 
 -- empty until build finishes
-kojiGetBuildRPMs :: String -> NVR -> Maybe String -> BuildID -> IO [String]
-kojiGetBuildRPMs huburl nvr march (BuildId bid) = do
+kojiGetBuildRPMs :: String -> NVR -> [String] -> BuildID -> IO [String]
+kojiGetBuildRPMs huburl nvr archs (BuildId bid) = do
   rpms <- Koji.listBuildRPMs huburl bid
-  arch <-
-    case march of
-      Nothing -> cmd "rpm" ["--eval", "%{_arch}"]
-      Just ar -> return ar
-  return $ map getNVRA $ filter (forArch arch) rpms
+  totalarchs <- getArchs archs
+  return $ map getNVRA $ filter (forArch totalarchs) rpms
   where
-    forArch :: String -> Struct -> Bool
-    forArch arch st =
+    forArch :: [String] -> Struct -> Bool
+    forArch archs' st =
       case lookupStruct "arch" st of
-        Just a -> a `elem` [arch, "noarch"]
+        Just a -> a `elem` "noarch" : archs'
         Nothing -> error $ "No arch found for rpm for: " ++ showNVR nvr
 
     getNVRA :: Struct -> String
diff --git a/src/Main.hs b/src/Main.hs
--- a/src/Main.hs
+++ b/src/Main.hs
@@ -79,7 +79,7 @@
       <*> switchWith 'L' "latest" "Latest build"
       <*> switchWith 't' "check-remote-time" "Check remote rpm timestamps"
       <*> optional pkgMgrOpt
-      <*> optional archOpt
+      <*> many archOpt
       <*> optional existingOpt
       <*> optional (strOptionWith 'b' "prefix" "SUBPKGPREFIX" "Prefix to use for subpackages [default: base package]")
       <*> selectOpt
