Fire's arg parser truncates strings with hashes (#) in them. Simple test: test.py: ``` import fire def test(a): print(a, type(a)) fire.Fire(test) ``` ``` > python test.py hi#there hi <class 'str'> > python test.py "hi#there" hi <class 'str'> ``` If this is by design, it doesn't appear to be documented anywhere.