I tried with python meterpreter:

```
[*] Capturing 1 screenshots with a delay of 10 seconds
[-] Post failed: IOError closed stream
[-] Call stack:
[-]   /Users/juan/Projects/git/metasploit-framework/lib/rex/io/stream_abstraction.rb:63:in `close'
[-]   /Users/juan/Projects/git/metasploit-framework/lib/rex/io/stream_abstraction.rb:63:in `cleanup_abstraction'
[-]   /Users/juan/Projects/git/metasploit-framework/lib/rex/io/stream_abstraction.rb:95:in `close'
[-]   /Users/juan/Projects/git/metasploit-framework/lib/msf/core/post/common.rb:91:in `cmd_exec'
[-]   /Users/juan/Projects/git/metasploit-framework/modules/post/osx/capture/screen.rb:72:in `block in run'
[-]   /Users/juan/Projects/git/metasploit-framework/modules/post/osx/capture/screen.rb:67:in `times'
[-]   /Users/juan/Projects/git/metasploit-framework/modules/post/osx/capture/screen.rb:67:in `run'
```

(after myself modifications)

I'm going to land just with shell only compatible session atm.